[java IO流]之 Properties屬性集

小杆子發表於2021-02-10
概述:

1.Properties類表示了一個持久的屬性集。

2.Properties可以儲存在流中或從流中載入;屬性列表中每個鍵及其對應值都是一個字串。

3.Properties可以當做Map集合類使用

//當成map集合使用

 Properties prop=new Properties();

  prop.put("Hell01", "Word1");

  prop.put("Hell02", "Word2");

  prop.put("Hell03", "Word3");

  prop.put("Hell04", "Word4");

  prop.put("Hell05", "Word5");

  Set<Entry<Object,Object>> entrySet = prop.entrySet();

  for (Entry<Object, Object> entry : entrySet) {

      System.out.print(entry.getKey()+"|");

      System.out.println(entry.getValue());

  }

//輸出結果為:

Hell03|Word3

Hell02|Word2

Hell01|Word1

Hell05|Word5

Hell04|Word4

4.Properties的特殊遍歷功能
public Object SetProperty(String key,String value) 新增鍵值,必須是字串型別

public String getProperty(String key) 根據鍵,獲取值

public Set stringPropertyNames() 返回鍵的所有Name

//當成屬性集使用

  Properties prop=new Properties();

  prop.setProperty("Hell01", "Word1");

  prop.setProperty("Hell02", "Word2");

  prop.setProperty("Hell03", "Word3");

  prop.setProperty("Hell04", "Word4");

  prop.setProperty("Hell05", "Word5");

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

  for (String string : Keys) {

      String value = prop.getProperty(string);

      System.out.println(string+"|"+value);

  }

//輸出結果為:

Hell03|Word3

Hell02|Word2

Hell01|Word1

Hell05|Word5

Hell04|Word4

Properties和IO流結合使用
public void load(Reader reader) 從字元流讀取屬性列表(關鍵字和元素對)

需要建立properties檔案

Properties prop=new Properties();

  //獲取prop.properties檔案的鍵值對,用prop物件接收

  prop.load(new FileReader("E:\\java-demo\\day0420\\day0506\\prop.properties"));

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

  for (String string : keys) {

      System.out.print(string);

      System.out.println(prop.getProperty(string));

  }

//輸出結果為:

Hell03Word3

Hell02Word2

Hell01Word1

Hell05Word5

Hell04Word4

public void store(Writer writer,String comments) 將屬性列表(鍵和元素對)寫入此properties表中,

步驟:

1.建立properties物件。

2.然後往properties裡面新增內容

3.用store方法輸入到Properties檔案中。

Properties prop=new Properties();

prop.setProperty("Hell01", "Word1");

prop.setProperty("Hell02", "Word2");

prop.setProperty("Hell03", "Word3");

prop.setProperty("Hell04", "Word4");

prop.setProperty("Hell05", "Word5");

prop.store(new FileWriter("E:\\java-demo\\day0420\\day0506\\prop.properties"), "comments");
效果圖顯示:

【java IO流】之 Properties屬性集

配置檔案:

1.Properties 輕量級,在網路中傳輸頻寬小,本地儲存資料量簡單,就是鍵值對結果,理解為一個類似於map的檔案

2.XML 重量級,結構化清晰,可讀性強,能夠儲存複製結構的資料

持久化檔案有:

1.txt

2.Properties

3.XML

4.json

5.資料庫

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章