PropertiesConfiguration utf-8编码

时间:2014-10-29 12:25:12

标签: java

我需要在属性文件中添加或更改值并保存此文件布局(coments,order等)。如果我使用java.util.Properties,将删除所有注释及其更改的顺序。看起来像Apache Commons的PropertiesConfiguration可以帮助我,但我在保存方面存在问题。

在属性文件中,我有这些行(例如):

#Comments
Test = Тест

当属性文件保存时,此行转换为:

Test = \u0422\u0435\u0441\u0442

给出代码示例:

public void writeProperty(String key, String value)
{
    try
    {
        config = new PropertiesConfiguration(sFileName);
        config.setEncoding("UTF-8");
        config.setProperty(key, value);
        config.save();
    }
    catch (ConfigurationException e)
    {
        System.out.println("Error");
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:4)

应该是这样的。属性文件定义为ISO-8859-1编码,并且必须相应地转义Unicode字符。

更改它会破坏API定义,从而导致非标准属性文件。

有关详细信息,请参阅the according article on wikipedia