如何用Java中的部分解析ini文件?

时间:2016-01-06 15:49:14

标签: java parsing ini

以下是一个示例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文件吗?

1 个答案:

答案 0 :(得分:6)

我可以建议你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);
}