2014-10-02 49 views
0

我有一個配置文件,我想從配置文件中讀取文件的路徑並將其傳遞給我的java類的系統屬性。這就是我想從文件獲得:如何將路徑從文件傳遞到我的java類的系統屬性

# path configuration 
MyfilePATH="$projectPath/file name" 

,這就是我在我的Java類:

private static final String FILE_PATH = System.getProperty("FILE_PATH","DEFAULT_PATH"); 

,我USET在我的Java類中的FILE_PATH。但因爲我對Java很新,所以我不知道如何將配置文件中的值傳遞給我的java類。

任何幫助? 感謝

回答

0

System.getProperty只會返回某些特定屬性訪問MyfilePATHhttp://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

你想要的是讀你的自己的財產文件。這說明如下:http://docs.oracle.com/javase/tutorial/essential/environment/properties.html

的總體思路是:

​​

然而,這不是很清楚你在你的情況下,想要的東西; $ projectPath對你意味着什麼?如果你想要字符串插值(用其他東西替換字符串中的$ projectPath部分),這是一個不同的故事。

+0

感謝您的回答,「$ projectPath」只是一個簡單的字符串,可以是任何東西,並不重要。我想檢索文件中的字符串,並將其作爲系統屬性傳遞給我的java類。我試過你的代碼,但在這一行「props.load(in);」我看到錯誤。它說我應該把道具加到道具上。我改成((系統)道具).load(in);如建議,但沒有奏效,我不知道如何解決它。 – user3409650 2014-10-03 07:05:01

+0

你能得到什麼樣的'cast'錯誤信息?我添加了我正在導入的類,也許你正在使用其他的java.util.Properties ...否則,我只是測試它,只要你能得到文件,你應該沒問題。 – phtrivier 2014-10-03 08:35:01

0

使用Properties第一加載config文件如下圖所示

Properties prop = new Properties(); 
// load a properties file 
prop.load(new FileInputStream("config.properties")); 

然後,從負載特性使用

String myPath = prop.getProperty("MyfilePATH") 
相關問題