1

我正在尝试使用我的 tabbedPane 中的所有选项卡数据保存一个 .ini 文件,我已经设法这样做了。但由于这些选项卡可能包含 UTF-8 字符,我希望将文件保存为没有 BOM 的 UTF-8。

虽然我在阅读 UTF-8 .ini 文件时没有问题:

InputStreamReader reader = null;
reader = new InputStreamReader(
new FileInputStream(file), "UTF-8");
ini.load(reader);

只要我想保存编辑过的数据,它就会将其保存为 ANSI 并转换 \uXXXX (X = number) 中的非 ANSI 字符:

OutputStreamWriter writer  = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
ini.store(writer);

虽然它对阅读来说并不是很糟糕,因为它在我的 TabbedPane 中正确显示。手动编辑很糟糕,所以我想将我的文件保存为没有 BOM 的 UTF8,没有这些转义的 \uXXXX 字符。

那么我做错了什么?

4

1 回答 1

3

该类Ini具有setConfig可用于自定义行为的方法。

特别是,Configescape属性设置为 false 的 a 将禁止转义非 ascii 字符。

于 2013-11-22T07:33:27.637 回答