您的位置:首页 > 编程语言 > Java开发

java的properties类以及读取properties文件

2016-03-29 23:32 411 查看
java中有一个专门处理配置文件“.properties”文件的类:Java.util.Properties。“.properties”配置文件的格式为:键=值

Properties类继承自Hashtable:



主要的几个方法:

1.getProperty(String key); 根据key值获取value

2.load(InputStream inStream) 装载.properties文件,以供3.getProperty等方法使用

4.setProperty(String key ,String value) 调用hashtable的put方法,设置键值对

5.store(outputStream out,String comments)与load相反 写入键值对

6.clear 清除所有已经加载的键值对

实验:我在项目的根目录下建立一个database.properties文件

方法一:

public static void main(String[] args){
Properties dbPps = new Properties();
try {
dbPps.load(new FileInputStream("database.properties"));
//根据key读取value
String value = dbPps.getProperty("time");
System.out.println(value);
//写入键值对
OutputStream out =       newFileOutputStream("database.properties");
dbPps.setProperty("sex","man");
dbPps.store(out, "new insert");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
原properties:
password=root
time=20160329
username=root

新properties:
#new insert
#Tue Mar 29 22:53:29 CST 2016
password=root
sex=man
time=20160329
username=root


方法二

Properties dbPps= new Properties();
InputStream in = Object.class.getResourceAsStream("/database.properties");
dbPps.load(in);
/*
注意文件地址加斜线
Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。
InputStream in = ReadPropertie.class.getClassLoader().getResourceAsStream("database.properties");这样就不用加斜杠了。
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: