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; |
/** |
* java操作.properties文件 |
* |
*/ |
public class Test { |
// 根据key读取value |
public static String readValue(String filePath, String key) { |
Properties props = new Properties(); |
try { |
System.out.println( "当前文件:" + filePath); |
InputStream in = new BufferedInputStream( new FileInputStream( |
filePath)); |
props.load(in); |
String value = props.getProperty(key); |
System.out.println( "根据key读取value:" + 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); |
OutputStream fos = new FileOutputStream(filePath); |
prop.setProperty(parameterName, parameterValue); |
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( "c:\\info.properties" , "url_1" ); // 根据key获取value |
writeProperties( "c:\\info.properties" , "url_1" , |
"http://www.yuncode.net" ); |
writeProperties( "c:\\info.properties" , "url_2" , "http://www.baidu.com" ); |
readProperties( "c:\\info.properties" ); // 读取全部属性 |
} |
} |