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为扩展名。这类文件的内容主要是键值对,广泛应用于各种配置场景,如应用程序的设置、国际化(i18n)文本等。然而,由于历史原因...
Java Properties是Java语言中用于处理配置文件的一个内置类,它主要负责存储键值对的数据,广泛应用于各种配置文件,如数据库连接配置、系统环境变量设置等。Properties类提供了读取和写入.properties文件的能力,...
Java Properties 类是Java标准库中用于处理配置文件的关键组件,主要负责存储和加载键值对数据,常用于管理应用程序的配置信息。配置文件通常以`.properties`为扩展名,采用文本格式,每行包含一个键值对,键和值...
此工具类只用于Java后端在操作Properties文件的时候写的工具类,方便properties文件的存取操作
在Java编程中,Properties文件是用于存储配置信息的文本文件,通常包含键值对,其中键和值可以是任意字符串。然而,当这些文件中包含中文字符时,如果不正确地处理编码,可能会出现中文乱码的问题。本文将深入探讨...
在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以.key=value的形式组织。当我们需要在程序运行时修改这些键值对,可以使用Java的Properties类来实现。以下是一些关于如何在Java中改变Properties...
Java Properties是Java编程语言中用于处理配置文件的关键类,它主要用于存储和加载键值对,这些键值对可以在程序运行时被读取和修改。在Java工程中,Properties类经常被用来管理应用程序的配置参数,如数据库连接...
**Java Properties文件** Java Properties是Java编程语言中用于配置应用程序的一种文件格式,它通常用于存储配置参数、系统环境设置或用户偏好。这种文件格式以键值对的形式存储数据,每行一个键值对,键和值之间用...
Java提供了一个内置的`java.util.Properties`类,用于处理`.properties`文件,这种格式通常用来存储键值对,即键(key)和对应的值(value)。以下是如何利用`Properties`类读取和操作`.properties`文件的详细步骤。...
Java Properties文件是Java编程语言中用于存储配置信息的文本文件,通常以.key=value的形式存储键值对。这种文件格式在Java应用中广泛用于保存应用程序的配置参数、国际化字符串或者数据库连接信息等。读取...
Java Properties 类是Java标准库中一个非常实用的类,它主要用于处理配置文件,尤其是以`.properties`格式存储的键值对数据。这类文件通常用于存储应用程序的配置信息,如数据库连接字符串、应用设置等,其内容是以...
在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以键值对的形式存在。这些文件在程序运行时可以被加载并解析,以便应用根据配置内容进行动态行为调整。本篇将深入探讨如何使用Java来实现Properties...
这是做项目中,集成第三东西需要些配置,我抽取到属性文件中,然后写了个公用类统一调用,基本就是key返回具体值,属性文件位置自己可以调整,然后类中修改获取路径就可以了。目前我的属相文件放置在src下
javaproperties通过基于json模块的简单API提供对读写(简单的面向行格式和XML)的支持-尽管,为了恢复Java迷,它还包括旨在匹配行为的Properties类。 Python 尽可能多地使用 。 javaproperties版本的javaproperties...
本文将深入探讨一种常见的键值对存储方式——使用Java的Properties类。Properties类是Java的标准库提供的一种简单而实用的数据存储格式,适用于保存配置信息或者跨程序共享数据。 **Java Properties类** Properties...
利用java的反射解析Properties文件转成对象 /** * 解析properties文件为对象 * @param * @param propPath * @param cls * @return * @throws InstantiationException * @throws ...
在Java编程中,读取`properties`文件是常见的任务,用于存储配置信息或者系统设置。以下将详细讲解六种不同的方法来实现这一功能。 1. **使用Properties类** Java的标准库提供了`java.util.Properties`类,它是...
在Java编程中,Properties文件是一种常用的配置文件格式,用于存储应用程序的配置参数或者环境设置。这些文件通常以键值对的形式存在,例如`key=value`。读取Properties文件是Java开发中的常见操作,特别是在需要...
在Java编程中,`properties`文件是用于存储应用程序配置信息的一种简单文本格式。这些文件通常包含键值对,其中键和值之间用等号或冒号分隔。本篇文章将详细探讨如何在Java中读取、写入、修改以及删除`properties`...
在Java编程中,Properties文件是用于存储配置信息的文本文件,通常以.key=value的形式存在。在实际开发中,我们经常需要读取和写入这些文件来管理应用的配置。然而,有时可能会遇到一些常见问题,比如系统找不到指定...