我正在编写一个Java应用程序,我只需要它来更改ini文件中的一个键设置。我正在使用ini4j执行此操作,但在加载文件时遇到了一些问题。
该文件看起来像我在下面的内容:
[SECTION 1]
#Some Commented text
Key1=value 1 for key 1
+value 2 for key 1
+value 3 for key 1
Key2=value for key 2<BR>
Key3=value for key 3<BR>
当我的应用程序改变一个设置(例如键3)时,它会改变整个文件,我得到了下面的内容:
[SECTION 1]
#Some Commented text
Key1=value 1 for key 1
+value 2 for key 1=
+value 3 for key 1=
Key2=value for key 2
Key3=new value 1 for key 3
+new value 2 for key 3
请注意,ini4j会将新行上的多值键识别为关键设置,并在其末尾添加=
符号,并将所有评论从;
更改为{{1} (这不应该引起问题,但除了我指定的密钥之外别无其他任何东西)。
当我使用下面的代码片段加载ini文件时,我能够正确地发现问题:
#
有没有办法让ini4j更改除了特定键之外的任何其他内容?如果没有,我怎样才能使ini4j无法识别未注释的行,因为它们必然是关键设置。我正在使用的String iniFileLoc = "my path\\iniFile.ini";
String valueLine = "value 1 for key 3\n" + "+value 2 for key 3\n";
Wini ini = new Wini();
File iniFile = new File(iniFileLoc);
ini.load(iniFile);
ini.add("SECTION1", "Key3", valueLine);
ini.store(iniFile);
文件必须采用这种格式,因此除了使用ini
符号之外,我无法指定使用多值键的其他方法。
非常感谢任何帮助。
由于