您的位置:首页 > 编程语言 > Java开发

java读取、写入保存、遍历ini文件配置数据

2017-10-05 09:37 393 查看
全栈工程师开发手册 (作者:栾鹏)

java教程全解

java读取ini配置文件,将数据写入ini文件,遍历ini文件

需要引入org.dtools.javaini包,下载

测试代码

public static void main(String[] args) {
String value =ini_read("group1","key1","default","set.ini");
ini_write("group2","key2",value,"set.ini");
ini_traverse("set.ini");
}


读取ini代码

public static String ini_read(String group, String key, String default_value, String filepath)
{
IniFile iniFile=new BasicIniFile();
File file=new File(filepath);
IniFileReader rad=new IniFileReader(iniFile, file);
try {
//读取item
rad.read();
IniSection iniSection=iniFile.getSection(group);
if(iniSection==null)
return default_value;
IniItem iniItem=iniSection.getItem(key);
if (iniItem==null) {
return default_value;
}
return iniItem.getValue();
}
catch (IOException e) {
e.printStackTrace();
}
return null;
}


存储ini代码

//保存ini文件,group分组必须存在,不能为空
public static void ini_write(String group, String key, String value, String filepath)
{
IniFile iniFile=new BasicIniFile();
File file=new File(filepath);
IniFileReader rad=new IniFileReader(iniFile, file);
IniFileWriter wir=new IniFileWriter(iniFile, file);
try {
rad.read();
IniSection iniSection=iniFile.getSection(group);
System.out.println(iniSection.getName());
IniItem iniItem=iniSection.getItem(key);
if(iniItem==null)
{
iniItem=new IniItem(key);
iniItem.setValue(value);
iniSection.addItem(iniItem);
}
else {
iniItem.setValue(value);
}

wir.write();
}
catch (IOException e) {
e.printStackTrace();
}
}


遍历ini文件

public static void ini_traverse(String filepath) {
try {
IniFile ini = new BasicIniFile(false);//不使用大小写敏感
IniFileReader reader = new IniFileReader(ini, new File(filepath));
reader.read();
for(int i=0;i<ini.getNumberOfSections();i++){
IniSection sec = ini.getSection(i);
System.out.println("---- " + sec.getName() + " ----");
for(IniItem item : sec.getItems()){
System.out.println(item.getName() + " = " + item.getValue());
}
}
} catch (Exception e) {
e.printStackTrace();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: