我有一个.ini文件,它看起来像这样,并且正在使用ini4j来解析文件:
[Filepath]
Inbound=C:UsersBilboDesktopTesting
我想返回确切的字符串(C:\Users\Bilbo\Desktop\Testing(,我有以下java代码:
public static String ParseIniInbound (File iniFile) throws
InvalidFileFormatException, IOException {
String iniFileName = iniFile.toString();
Ini ini = new Ini(new File(iniFileName));
String InboundPath= ini.get("Filepath", "Inbound");
return InboundPath;
}
然而,返回的是C:UsersBillboDesktopTesting
我试着在.ini文件的文件路径周围加引号,将其作为字符串读取,但没有成功。我在.ini文件中使用了双斜杠(C:\\Users\\Bilbo\\Desktop\\Testing(,该文件返回我要查找的内容(C:\Users\Bilbo\Desktop\Testing(。有没有一种方法可以用ini4j从.ini文件中读取字符串,或者用其他方法?感谢
最简单的方法是禁用转义。
import org.ini4j.Config;
...
Config.getGlobal().setEscape(false);
另一种选择是使用Wini类而不是
import org.ini4j.Wini;
...
Wini ini = new Wini(new File(iniFileName));
读取文件路径后,只需将斜杠改为双斜杠:
public static String ParseIniInbound (File iniFile) throws
InvalidFileFormatException, IOException {
String iniFileName = iniFile.toString().replaceAll("\", "\\");
Ini ini = new Ini(new File(iniFileName));
String InboundPath= ini.get("Filepath", "Inbound");
return InboundPath;
}