`
leng_yingxin
  • 浏览: 3892 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java Properties

阅读更多
Properties class表示一个属性的持久化集合,Properties能够被保存到stream中,也能从stream中读出Properties, 每个key和与其相应的value都是一个字符串,properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值"的格式,在properties文件中,可以用"#"来作注释,properties文件在Java编程中用到的地方很多,操作很方便
1.获取jvm系统属性
package com.cn.tibco;

import java.util.Properties;

public class Properties1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Properties pp = System.getProperties();
		pp.list(System.out);
	}

}


执行结果如下
引用

-- listing properties --
java.runtime.name=Java(TM) SE Runtime Environment
sun.boot.library.path=D:\Java6\jdk1.6.0_25\jre\bin
java.vm.version=20.0-b08
java.vm.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
path.separator=;
java.vm.name=Java HotSpot(TM) Client VM
file.encoding.pkg=sun.io
user.country=US
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=Service Pack 3
java.vm.specification.name=Java Virtual Machine Specification
user.dir=D:\dev-workspace\JavaPractices
java.runtime.version=1.6.0_25-ea-b01
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=D:\Java6\jdk1.6.0_25\jre\lib\endorsed
os.arch=x86
java.io.tmpdir=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\
line.separator=

java.vm.specification.vendor=Sun Microsystems Inc.
user.variant=
os.name=Windows XP
sun.jnu.encoding=GBK
java.library.path=D:\Java6\jdk1.6.0_25\bin;.;C:\WINDOWS...
java.specification.name=Java Platform API Specification
java.class.version=50.0
sun.management.compiler=HotSpot Client Compiler
os.version=5.1
user.home=C:\Documents and Settings\Administrator
user.timezone=
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=Cp1252
java.specification.version=1.6
user.name=Administrator
java.class.path=D:\dev-workspace\JavaPractices\bin
java.vm.specification.version=1.0
sun.arch.data.model=32
java.home=D:\Java6\jdk1.6.0_25\jre
sun.java.command=com.cn.tibco.Properties1
java.specification.vendor=Sun Microsystems Inc.
user.language=en
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode, sharing
java.version=1.6.0_25-ea
java.ext.dirs=D:\Java6\jdk1.6.0_25\jre\lib\ext;C:\W...
sun.boot.class.path=D:\Java6\jdk1.6.0_25\jre\lib\resource...
java.vendor=Sun Microsystems Inc.
file.separator=\
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport...
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.desktop=windows
sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+m...


2.如何读取配置文件
新建一个配置文件file1.properties,文件内容如下
name=leng
company=tibco
age=22

将class Properties1 修改为如下:
package com.cn.tibco;

import java.io.FileInputStream;
import java.util.Enumeration;
import java.util.Properties;

public class Properties1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Properties pps = new Properties();
	    try {   
			        pps.load(new FileInputStream("D:\\dev-workspace\\JavaPractices\\src\\file.properties"));   
			        Enumeration enum1 = pps.propertyNames();   
			       while (enum1.hasMoreElements()) {   
			       String strKey = (String) enum1.nextElement();   
			      String strValue = pps.getProperty(strKey);   
			       System.out.println(strKey + "=" + strValue);   
			       }   
			    } catch (Exception e) {   
			        e.printStackTrace();   
			   } 

	}

}

运行结果如下:
引用

name=leng
company=tibco
age=22


3.一个完整的实例
package com.cn.tibco;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Enumeration;
import java.util.Properties;

public class TestAll {
	//根据key读取value   
	 public static String readValue(String filePath,String key) {   
	  Properties props = new Properties();   
	        try {   
	         InputStream in = new BufferedInputStream (new FileInputStream(filePath));   
	         props.load(in);   
	         String value = props.getProperty (key);   
	            System.out.println(key+value);   
	            return value;   
	        } catch (Exception e) {   
	         e.printStackTrace();   
	         return null;   
	        }   
	 }   
	    
	 //读取properties的全部信息   
	    public static void readProperties(String filePath) {   
	     Properties props = new Properties();   
	        try {   
	         InputStream in = new BufferedInputStream (new FileInputStream(filePath));   
	         props.load(in);   
	            Enumeration en = props.propertyNames();   
	             while (en.hasMoreElements()) {   
	              String key = (String) en.nextElement();   
	                    String Property = props.getProperty (key);   
	                    System.out.println(key+Property);   
	                }   
	        } catch (Exception e) {   
	         e.printStackTrace();   
	        }   
	    }   
	  
	    //写入properties信息   
	    public static void writeProperties(String filePath,String parameterName,String parameterValue) {   
	     Properties prop = new Properties();   
	     try {   
	      InputStream fis = new FileInputStream(filePath);   
	            //从输入流中读取属性列表(键值对)   
	            prop.load(fis);   
	            //调用 Hashtable 的方法 put。使用 getProperty 方法提供并行性。   
	            //强制要求为属性的键和值使用字符串。返回值是 Hashtable 调用 put 的结果。   
	            OutputStream fos = new FileOutputStream(filePath);   
	            prop.setProperty(parameterName, parameterValue);   
	            //以适合使用 load 方法加载到 Properties 表中的格式,   
	            //将此 Properties 表中的属性列表(键和元素对)写入输出流   
	            prop.store(fos, "Update '" + parameterName + "' value");   
	        } catch (IOException e) {   
	         System.err.println("Visit "+filePath+" for updating "+parameterName+" value error");   
	        }   
	    }   
	  
	    public static void main(String[] args) {   
	     readValue("E:\\file.properties","name");   
	        writeProperties("E:\\file.properties","age","21");   
	        readProperties("E:\\file.properties" );   
	        System.out.println("OK");   
	    }   


}
分享到:
评论

相关推荐

    java properties应用案例

    Java Properties是Java语言中用于处理配置文件的一个内置类,它主要负责存储键值对的数据,广泛应用于各种配置文件,如数据库连接配置、系统环境变量设置等。Properties类提供了读取和写入.properties文件的能力,...

    java properties文件中文转化

    Java Properties文件是Java编程语言中用于存储配置信息的文本文件,通常以.properties为扩展名。这类文件的内容主要是键值对,广泛应用于各种配置场景,如应用程序的设置、国际化(i18n)文本等。然而,由于历史原因...

    Java Properties 解决中文乱码和顺序读写.docx

    Java Properties 类是Java标准库中用于处理配置文件的关键组件,主要负责存储和加载键值对数据,常用于管理应用程序的配置信息。配置文件通常以`.properties`为扩展名,采用文本格式,每行包含一个键值对,键和值...

    java properties文件操作工具类,可追加修改

    此工具类只用于Java后端在操作Properties文件的时候写的工具类,方便properties文件的存取操作

    JAVA 解决Properties文件保存中文乱码

    在Java编程中,Properties文件是用于存储配置信息的文本文件,通常包含键值对,其中键和值可以是任意字符串。然而,当这些文件中包含中文字符时,如果不正确地处理编码,可能会出现中文乱码的问题。本文将深入探讨...

    java 改变Properties文件中的键值

    在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以.key=value的形式组织。当我们需要在程序运行时修改这些键值对,可以使用Java的Properties类来实现。以下是一些关于如何在Java中改变Properties...

    java Properties

    Java Properties是Java编程语言中用于处理配置文件的关键类,它主要用于存储和加载键值对,这些键值对可以在程序运行时被读取和修改。在Java工程中,Properties类经常被用来管理应用程序的配置参数,如数据库连接...

    jrc editor 2.0.0 中文版 Java Properties

    **Java Properties文件** Java Properties是Java编程语言中用于配置应用程序的一种文件格式,它通常用于存储配置参数、系统环境设置或用户偏好。这种文件格式以键值对的形式存储数据,每行一个键值对,键和值之间用...

    利用Java的Properties 类读取配置文件信息

    Java提供了一个内置的`java.util.Properties`类,用于处理`.properties`文件,这种格式通常用来存储键值对,即键(key)和对应的值(value)。以下是如何利用`Properties`类读取和操作`.properties`文件的详细步骤。...

    java Properties文件key,value读取

    Java Properties文件是Java编程语言中用于存储配置信息的文本文件,通常以.key=value的形式存储键值对。这种文件格式在Java应用中广泛用于保存应用程序的配置参数、国际化字符串或者数据库连接信息等。读取...

    Java Properties简介_动力节点Java学院整理

    Java Properties 类是Java标准库中一个非常实用的类,它主要用于处理配置文件,尤其是以`.properties`格式存储的键值对数据。这类文件通常用于存储应用程序的配置信息,如数据库连接字符串、应用设置等,其内容是以...

    java实现properties文件读取

    在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以键值对的形式存在。这些文件在程序运行时可以被加载并解析,以便应用根据配置内容进行动态行为调整。本篇将深入探讨如何使用Java来实现Properties...

    java properties文件读取

    这是做项目中,集成第三东西需要些配置,我抽取到属性文件中,然后写了个公用类统一调用,基本就是key返回具体值,属性文件位置自己可以调整,然后类中修改获取路径就可以了。目前我的属相文件放置在src下

    javaproperties:用于读写Java .properties文件的Python库

    javaproperties通过基于json模块的简单API提供对读写(简单的面向行格式和XML)的支持-尽管,为了恢复Java迷,它还包括旨在匹配行为的Properties类。 Python 尽可能多地使用 。 javaproperties版本的javaproperties...

    总结复习 android存储方式2-键值对java Properties

    本文将深入探讨一种常见的键值对存储方式——使用Java的Properties类。Properties类是Java的标准库提供的一种简单而实用的数据存储格式,适用于保存配置信息或者跨程序共享数据。 **Java Properties类** Properties...

    java解析Properties配置文件为对象Bean

    利用java的反射解析Properties文件转成对象 /** * 解析properties文件为对象 * @param * @param propPath * @param cls * @return * @throws InstantiationException * @throws ...

    java读取properties六种方法

    在Java编程中,读取`properties`文件是常见的任务,用于存储配置信息或者系统设置。以下将详细讲解六种不同的方法来实现这一功能。 1. **使用Properties类** Java的标准库提供了`java.util.Properties`类,它是...

    java 读取properties文件代码

    在Java编程中,Properties文件是一种常用的配置文件格式,用于存储应用程序的配置参数或者环境设置。这些文件通常以键值对的形式存在,例如`key=value`。读取Properties文件是Java开发中的常见操作,特别是在需要...

    java对properties配置文件的读和写

    在Java编程中,`properties`文件是用于存储应用程序配置信息的一种简单文本格式。这些文件通常包含键值对,其中键和值之间用等号或冒号分隔。本篇文章将详细探讨如何在Java中读取、写入、修改以及删除`properties`...

    java读写properties文件,解决系统找不到指定路径,解决写入后读取正常,但文件数据未更新问题

    在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以.key=value的形式存在。在实际开发中,我们经常需要读取和写入这些文件来管理应用的配置。然而,有时可能会遇到一些常见问题,比如系统找不到指定...

Global site tag (gtag.js) - Google Analytics