Java 9中国际化方面有哪些改进?

Java 9中国际化方面有哪些改进?

Java 9 中的国际化增强功能包括 Unicode 8.0 UTF-8 属性文件以及启用 CLDR 区域设置数据默认情况下。 Java 9 最多支持 Unicode 8.0 标准,包含 10,555 个字符、29 个脚本和 42 个块。

在 Java 9 中,属性文件加载在UTF-8 编码。默认情况下,读取输入流会抛出MalformedInputExceptionUnmappableCharacterException。在这种情况下,PropertyResourceBundle实例会重置为异常之前的状态,重新读取 ISO-8859-1 中的输入流,然后继续读取。

如果PropertyResourceBundle。编码 已设置为ISO-8859-1 UTF-8,然后 PropertyResourceBundle 实例读取该编码的输入流,如果遇到无效序列则抛出异常。初始化 PropertyResourceBundle 类时读取并评估系统属性,则任何更改或删除该属性的操作都无效。

如果我们指定 ISO -8859-1

  • 无法用 ISO-8859-1 编码表示的字符strong>必须由Unicode转义符表示。
  • 其他编码值已忽略此系统的属性。

如果出现问题,我们可以考虑以下选项:

  • 属性文件转换为UTF-8编码
  • 指定运行时系统属性。
<strong>java.util.PropertyResourceBundle.encoding=ISO-8859-1</strong>

以上就是Java 9中国际化方面有哪些改进?的详细内容,更多请关注其它相关文章!