1. 程式人生 > >java ->properties類

java ->properties類

fileread col 方法 line 操作 code object set 及其

Properties類介紹

Properties 類表示了一個持久的屬性集。Properties 可保存在流中或從流中加載。屬性列表中每個鍵及其對應值都是一個字符串。

特點:

1、Hashtable的子類,map集合中的方法都可以用。

2、該集合沒有泛型。鍵值都是字符串

3、它是一個可以持久化的屬性集。鍵值可以存儲到集合中,也可以存儲到持久化的設備(硬盤、U盤、光盤)上。鍵值的來源也可以是持久化的設備。

4、有和流技術相結合的方法。

技術分享圖片

l load(InputStream) 把指定流所對應的文件中的數據,讀取出來,保存到Propertie集合中

l load(Reader)

l store

(OutputStream,commonts)把集合中的數據,保存到指定的流所對應的文件中,參數commonts代表對描述信息

l stroe(Writer,comments);

代碼演示:

/*

*

* Properties集合,它是唯一一個能與IO流交互的集合

*

* 需求:向Properties集合中添加元素,並遍歷

*

* 方法:

* public Object setProperty(String key, String value)調用 Hashtable 的方法 put。

* public Set<String> stringPropertyNames()

返回此屬性列表中的鍵集,

* public String getProperty(String key)用指定的鍵在此屬性列表中搜索屬性

*/

public class PropertiesDemo01 {

public static void main(String[] args) {

//創建集合對象

Properties prop = new Properties();

//添加元素到集合

//prop.put(key, value);

prop.setProperty("周迅", "張學友");

prop.setProperty("李小璐", "賈乃亮");

prop.setProperty("楊冪", "劉愷威");

//System.out.println(prop);//測試的使用

//遍歷集合

Set<String> keys = prop.stringPropertyNames();

for (String key : keys) {

//通過鍵 找值

//prop.get(key)

String value = prop.getProperty(key);

System.out.println(key+"==" +value);

}

}

}

將集合中內容存儲到文件

需求:使用Properties集合,完成把集合內容存儲到IO流所對應文件中的操作

分析:

1,創建Properties集合

2,添加元素到集合

3,創建流

4,把集合中的數據存儲到流所對應的文件中

stroe(Writer,comments)

store(OutputStream,commonts)

把集合中的數據,保存到指定的流所對應的文件中,參數commonts代表對描述信息(uncoide編碼)

5,關閉流

代碼演示:

public class PropertiesDemo02 {

public static void main(String[] args) throws IOException {

//1,創建Properties集合

Properties prop = new Properties();

//2,添加元素到集合

prop.setProperty("周迅", "張學友");

prop.setProperty("李小璐", "賈乃亮");

prop.setProperty("楊冪", "劉愷威");

//3,創建流

FileWriter out = new FileWriter("prop.properties");

//4,把集合中的數據存儲到流所對應的文件中

prop.store(out, "save data");

//5,關閉流

out.close();

}

}

讀取文件中的數據,並保存到集合

需求:從屬性集文件prop.properties 中取出數據,保存到集合中

分析:

1,創建集合

2,創建流對象

3,把流所對應文件中的數據 讀取到集合中

load(InputStream) 把指定流所對應的文件中的數據,讀取出來,保存到Propertie集合中

load(Reader)

4,關閉流

5,顯示集合中的數據

代碼演示:

public class PropertiesDemo03 {

public static void main(String[] args) throws IOException {

//1,創建集合

Properties prop = new Properties();

//2,創建流對象

FileInputStream in = new FileInputStream("prop.properties");

  //FileReader in = new FileReader("prop.properties");

//3,把流所對應文件中的數據 讀取到集合中

prop.load(in);

//4,關閉流

in.close();

//5,顯示集合中的數據

System.out.println(prop);

}

}

註意:使用字符流FileReader就可以完成文件中的中文讀取操作了

java ->properties類