章節六、3-讀取Properties屬性檔案
阿新 • • 發佈:2018-12-10
一、如何讀取Properties檔案1、建立一個名為ReadingProperties的類
2、建立一個.propertise屬性的檔案,建立的方式參考“二”中步驟
3、寫入如下程式碼
package introduction8; import java.io.FileInputStream; import java.nio.file.Path; import java.util.Properties; //讀取java中的屬性檔案,java中有一個寫好的類,名叫Properties /*Properties是一個配置檔案,主要作用是通過修改配置檔案可以方便的修改程式碼中的引數, * 不用改.class檔案就可以靈活的變更引數,.java檔案編譯為.class檔案以後,無法通過 * 反編譯找到原檔案,那麼,在java類中某個引數變更就很難靈活的實現引數的修改,當如果通過 * properties就可以實現修改,減少程式碼的維護成本,提高開發的效率。*/ public class ReadingProperties { public static void main(String[] args) { //後面的路徑為建立的.properties屬性的檔案路徑 String path = "C:\\Users\\Administrator\\eclipse-workspace\\JavaTutorial\\src\\introduction8\\test.propertise"; //建立一個Properties物件 Properties prop = new Properties();//需要用到檔案讀取流這個類,建立一個檔案讀取流物件,用於讀取本地檔案中的位元組資料 FileInputStream fs = new FileInputStream(path); } }
在eclipse中下面的程式碼會出現異常,自檢未通過:
滑鼠移動到報錯的程式碼上顯示如下
此處直接丟擲異常
4、終極程式碼:
package introduction8; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; importjava.nio.file.Path; import java.util.Properties; import java.util.jar.Attributes.Name; //讀取java中的屬性檔案,java中有一個寫好的類,名叫Properties /*Properties是一個配置檔案,主要作用是通過修改配置檔案可以方便的修改程式碼中的引數, * 不用改.class檔案就可以靈活的變更引數,.java檔案編譯為.class檔案以後,無法通過 * 反編譯找到原檔案,那麼,在java類中某個引數變更就很難靈活的實現引數的修改,當如果通過 * properties就可以實現修改,減少程式碼的維護成本,提高開發的效率。 */ public class ReadingProperties { public static void main(String[] args) throws IOException { //後面的路徑為建立的.properties屬性的檔案路徑 String path = "C:\\Users\\Administrator\\eclipse-workspace\\JavaTutorial\\src\\introduction8\\test.propertise"; //建立一個Properties物件 Properties prop = new Properties(); //需要用到檔案讀取流這個類,建立一個檔案讀取流物件,用於讀取本地檔案中的位元組資料 FileInputStream fs = new FileInputStream(path); /*輸入流中讀取屬性列表,讀取InputStream檔案,上面建立物件時將異常直接丟擲, 因此此處也會報異常,直接丟擲異常 */ prop.load(fs); //用Properties中的getProperty方法在file中用指定的鍵,搜尋值 System.out.println(prop.getProperty("name")); System.out.println(prop.getProperty("course")); } }
列印結果為,成功讀取到屬性檔案中的值:
二、建立FIile檔案
eclipse中建立一個檔案:File---》NEW---》File---》在File name中輸入檔名(檔名必須用.propertise,否則讀取會出錯)為字尾,本文演示中取名為test.propertise---》Finish。
三、如何定義FIile檔案
使用鍵值對的形式
左邊是鍵,右邊是值,程式碼中如果想訪問java這個值的話,直接訪問course就可以了,我們也可以很方便的將java這個值改變,列如改為Python,那麼程式碼在呼叫course這個鍵時,訪問就會由java變為Python這個值,這樣就能靈活的修改引數值了。