摘要:通過對指定的文件比如說上面的文件進(jìn)行裝載來獲取該文件中的所有鍵值對。與方法相反,該方法將鍵值對寫入到指定的文件中去。
讀取資源文件
摘要:對資源文件.properties的讀寫操作
一. 獲取類路徑的方式:二. Properties 類
獲取某個類的位置(編譯后的.class文件的位置):
new Junit().getClass().getResource("").getPath();
獲取classpath的位置(在tomcat中完美獲取,在weblogic中無法正常獲取,在JavaApplication中也能獲取):
this.getClass().getResource("").getPath();
獲取classpath的位置(該方法在jdk7以后無效):
Thread.currentThread().getContextClassLoader(). getResource("").getPath();
Properties類主要是對資源文件進(jìn)行讀寫操作
它提供了幾個主要的方法:
getProperty ( String key)
用指定的鍵在此屬性列表中搜索屬性。也就是通過參數(shù) key ,得到 key 所對應(yīng)的 value。load ( InputStream inStream)
從輸入流中讀取屬性列表(鍵和元素對)。通過對指定的文件(比如說上面的 test.properties 文件)進(jìn)行裝載來獲取該文件中的所有鍵 - 值對。以供 getProperty ( String key) 來搜索。setProperty ( String key, String value)
調(diào)用 Hashtable 的方法 put 。他通過調(diào)用基類的put方法來設(shè)置 鍵 - 值對。store ( OutputStream out, String comments)
以適合使用 load 方法加載到 Properties 表中的格式,將此 Properties 表中的屬性列表(鍵和元素對)寫入輸出流。與 load 方法相反,該方法將鍵 - 值對寫入到指定的文件中去。clear
清除所有裝載的 鍵 - 值對。該方法在基類中提供。
讀取資源文件的代碼如下:
public void getProperties(){ // demo 中獲取的資源文件都是放在src下面的,即都會被編譯到 classpath 下 // 如果 properties 文件不放在 classpath 下,使用絕對路徑也不能取到文件, 這一點(diǎn)還需要再研究下, // 可以用BufferedInputStream(inputStream)方法嘗試下 // 在 getResourceAsStream 中的參數(shù)以 "/" 開頭,則獲取到的是 classpath, 獲取資源文件需要自己寫上包名, 如代碼1 // 如果參數(shù)直接寫資源文件的文件名, 則表示資源文件與該類在同一個目錄下, 如代碼2 // 如果把獲取資源文件作為靜態(tài)方法, 那么該方法中無法使用對象 this // 為了在在靜態(tài)方法中獲取資源文件,可以使用 Obejct.class 來獲取一個 Class 對象, 如代碼3 // getResourceAsStream 只是需要一個 Class 對象, 用 int.class 照樣行 InputStream inputStream = this.getClass().getResourceAsStream("/properties/param.properties"); //代碼1 資源文件與類不在同一個包中 /* InputStream inputStream = this.getClass().getResourceAsStream("aram.properties"); //代碼2 資源文件與類在同一個包中 InputStream inputStream = Object.class.getResourceAsStream("aram.properties"); // 代碼3 如果當(dāng)前類是個靜態(tài)方法,則不能使用代碼2,要把this 換成 Object.class() */ Properties properties = new Properties(); try { properties.load(inputStream); // 把獲取的資源文件加載到 Proeprties 類中,然后可以通過 getProperty("key") 獲取屬性的值 Enumeration enumeration = properties.propertyNames(); // 獲取資源文件中的屬性 while(enumeration.hasMoreElements()){ String paramName = enumeration.nextElement().toString(); System.out.println("資源文件中的參數(shù)名:" + paramName); } } catch (IOException e) { e.printStackTrace(); } }
寫入資源文件的代碼如下:
todo
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/69471.html
摘要:用兩個字節(jié)表示。兩個字節(jié)第一個字節(jié)是負(fù)數(shù)第二個字節(jié)可能是正數(shù)目前最常用的中文碼表,萬的中文和符號。用兩個字節(jié)表示,其中的一部分文字,第一個字節(jié)開頭是,第二字節(jié)開頭是最新的中文碼表,目前還沒有正式使用。 01輸入和輸出 * A:輸入和輸出 * a: 參照物 * 到底是輸入還是輸出,都是以Java程序?yàn)閰⒄? * b: Output * 把內(nèi)存...
摘要:一對象在的配置文件中,可以使用一個或多個標(biāo)簽為配置一些初始化參數(shù)。進(jìn)而,程序員通過對象就可以得到當(dāng)前的初始化參數(shù)信息。對象通常也被稱之為域?qū)ο蟆? 一、ServletConfig對象 在Servlet的配置文件中,可以使用一個或多個標(biāo)簽為servlet配置一些初始化參數(shù)。(配置在某個servlet標(biāo)簽或者整個web-app下) 當(dāng)servlet配置了初始化參數(shù)后,web容器在創(chuàng)建se...
摘要:例子關(guān)閉文件操作讀取文件讀取文件中的一個字符讀取文件中的一個字符,返回文件中的一個字符并將指針移動到下一個字符解釋指使用函數(shù)打開文件時(shí)返回的資源對象。目標(biāo)文件的文件名及其所在路徑。服務(wù)器上目標(biāo)文件的文件名及其所在路徑。 打開文件 fopen(string filename,string mode);//返回一個資源對象,存儲當(dāng)前文件資源 解釋 filename:文件的文件名及其所在...
閱讀 1660·2021-09-28 09:35
閱讀 1131·2019-08-30 15:54
閱讀 1657·2019-08-30 15:44
閱讀 3363·2019-08-30 14:09
閱讀 488·2019-08-29 14:05
閱讀 2662·2019-08-28 17:53
閱讀 1978·2019-08-26 13:41
閱讀 1710·2019-08-26 13:26