为什么不将所有.properties文件转换为UTF-8?

我在一个java项目上工作,其中标签被外部化并翻译成.properties文件。

使用ISO-8859-1编码读取java中的资源,因此.properties文件也以ISO-8859-1编码存储。
当前文件搞砸了,有时使用转义\u00E4 ,有时使用实际的字母öäü
我也有俄语翻译,看起来像这样:

 code.adr=\u0430\u0434\u0440\u0435\u0441 

这可以使用UTF-8以明文forms存储。

现在的问题是,为什么不使用UTF-8?
为什么Java默认使用ISO-8859-1而不是UTF-8,向后兼容性?
有没有已知的缺点,将所有.properties文件转换为UTF-8?

  1. 如果您正在使用ResourceBundle,切换到ListResourceBundle可能是可行的:那就是纯java(数组)。
  2. 或者,您可能希望从XML翻译记忆库xliff或其他任何内容生成* .properties 。 这样做的好处是能够添加评论; 创建一个词汇表等。