[url]http://www.zxbc.cn/html/20081128/68432.html[/url]
package com.geosun.conf;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
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 GetProperty {
public static String readValue(String filePath, String key) {
Properties props = new Properties();
try {
InputStream ips = new BufferedInputStream(new FileInputStream(filePath));
props.load(ips);
String value = props.getProperty(key);
System.out.println(key + "=" + value);
return value;
} catch (FileNotFoundException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
// 读取全部信息
public static void readProperties(String filePath) {
Properties props = new Properties();
try {
InputStream ips = new BufferedInputStream(new FileInputStream(filePath));
props.load(ips);
Enumeration enum1 = props.propertyNames();
while (enum1.hasMoreElements()) {
String key = (String) enum1.nextElement();
String value = props.getProperty(key);
System.out.println(key + "=" + value);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void writeProperties(String filePath, String paraKey, String paraValue) {
Properties props = new Properties();
try {
OutputStream ops = new FileOutputStream(filePath);
props.setProperty(paraKey, paraValue);
props.store(ops, "set");
} catch (IOException e) {
e.printStackTrace();
}
}
//用load的话 就会追加或者覆盖原有的key-value
public static void writeConfig(String key, String value){
String path = System.getProperty("user.dir") + File.separator + "config" + File.separator + "config.properties";
Properties props = new Properties();
try {
props.load(new FileInputStream(path));//用load的话 就会追加或者覆盖原有的key-value
OutputStream ops = new FileOutputStream(path);
props.setProperty(key, value);
props.store(ops, "add-------");
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
GetProperty.readValue("D:\\eclipse3.3\\workspace\\Test\\src\\sys.properties", "username");
GetProperty.readProperties("D:\\eclipse3.3\\workspace\\Test\\src\\sys.properties");
GetProperty.writeProperties("D:\\eclipse3.3\\workspace\\Test\\src\\sys.properties", "age", "21");
}
}