2016-01-06 61 views
3

下面是一個簡單的ini文件:如何用Java中的段解析ini文件?

[link#1] 
alias=My Link 1 
link=https://www.yandex.ru/ 

[link#2] 
alias=My Link 2 
link=https://mail.ru/ 

[link#3] 
alias=My Link 3 
link=http://point.md/ru/ 

我已經知道如何分析它,但鍵是一樣的,我需要進入這個可以說ArrayList<LinkObject>。有沒有人知道這個好的解決方案?或者我們應該以不同的方式格式化.ini文件?

+0

你使用庫進行解析嗎? –

+0

我甚至沒有開始解析。我見過這樣的其他職位:http://stackoverflow.com/questions/190629/what-is-the-easiest-way-to-parse-an-ini-file-in-java,但我不能找到任何可以幫助我的圖書館。 – FilipLuch

+0

那麼你在尋找一個圖書館,或者只是試圖閱讀這個文件? – lase

回答

4

我可以建議你ini4j。這是小而且非常容易使用的庫。只是download文件或包含依賴到你的Maven的配置:

<dependency> 
    <groupId>org.ini4j</groupId> 
    <artifactId>ini4j</artifactId> 
    <version>0.5.4</version> 
</dependency> 

現在加載.ini文件只是做:

Wini ini = new Wini(new File("your file path")); 

用法示例:

//output names of all sections  
Collection<Profile.Section> list = ini.values(); 
for(Profile.Section section : list){ 
    System.out.println(section.getName()); 
} 

//fetch and output option value 
String value = ini.fetch("link#1", "alias"); 
System.out.println(value); 

//output keys of all options of one section 
Profile.Section section = ini.get("link#1"); 
for(String key : section.keySet()){ 
    System.out.println(key); 
} 
+0

感謝您的詳細解釋。 – FilipLuch