try { Properties p = new Properties(); File file = new File("test.properties"); FileInputStream fis = new FileInputStream(file); p.load(fis); } catch (IOException ioex) { ioex.printStackTrace(); } Properties類的load()方法需要一個輸入流作為參數,這里我們向它傳入了一個FileInputStream對象。 接下來,我們就可以通過調用getProperty()方法從Properties對象獲取屬性值。下面我們來看看test.properties屬性文件的內容:
singleline=Single line value multiline =This example shows how we can write a property value over multiple lines in a properties file 這個屬性文件保存了兩個屬性,鍵分別是singleline和multiline。singleline的值只有一行,而multiline的值有多行。
假如我們調用Properties對象的getProperty()方法,并輸出屬性值,結果將是:
調用:
System.out.println("singleline? " + p.getProperty("singleline")); System.out.println("multiline ? " + p.getProperty("multiline")); 結果: singleline? Single line value multiline ? This example shows how we multiline屬性只包含了第一行值。那么,如何解決這個問題呢?其實很簡單,只需要在每個行的末尾加上轉義字符“/”就可以了。修改后的屬性文件如下所示: singleline=Single line value multiline =This example shows how we can write a property value over multiple lines in a properties file 再次讀取屬性文件的值,multiline的屬性值就能夠完整地讀取出來。