IO流--與properties集合配合使用
阿新 • • 發佈:2018-08-11
文件 load setprop -s cep prop 繼承 class nbsp
IO流--與properties集合配合使用:
註:生產上主要用於常量文件的配置,讀取常量文件;
1:properties集合的放值與取值:
/*
* properties集合繼承自hashTable,使用properties父類的放值(put();),取值(get();)
* 功能,遍歷集合得到的是Object類型的;
* 所以我們使用properties自己特有的放值(setProperties();)和取值(getProperties();)的功能
* 遍歷集合得到的是String類型的;
*/
@Test
public void test() throws IOException {
Properties properties = new Properties();
properties.setProperty("張三","23");
properties.setProperty("李四","25");
properties.setProperty("王二","29");
//properties父類的遍歷:
// Set<Object> objects = properties.keySet();
// for(Object key:objects){
// Object value = properties.get(key);
// System.out.println(key +"="+value);
// }
//使用自身的方法遍歷:
Set<String> strings = properties.stringPropertyNames();
for(String key :strings){
String value = properties.getProperty(key);
System.out.println(key +"="+value);
}
}
2:從properties集合寫入參數到文件:
public void propertiesWrite() throws IOException {
Properties properties = new Properties();
properties.setProperty("張三","23");
properties.setProperty("李四","25");
properties.setProperty("王二","29");
Writer writer = new FileWriter("OnlyFileTest/properties.txt");
properties.store(writer,"文件說明(註釋)");
writer.close();
}
3:從文件中讀取鍵值對的參數到properties集合中:
public void propertiesRead() throws IOException {
Reader fileReader = new FileReader("OnlyFileTest/properties.txt");
Properties properties = new Properties();
properties.load(fileReader);
fileReader.close();
System.out.println(properties);
}
IO流--與properties集合配合使用