Java6中PropertyResourceBundle(Reader)的使用示例

Java6中PropertyResourceBundle(Reader)的使用示例,java,localization,internationalization,Java,Localization,Internationalization,我有多个utf-8编码文件中的messages.properties文件(messages\u en\u US.properties,messages\u fr.properties,…)。在这些属性文件中,我有一些用于亚洲语言的属性文件。这意味着,字符不能用ISO-8859-1编码表示,必须用Unicode转义来表示。我不想这样做。根据下面链接中的文档,如果我使用接受读取器的构造函数,它没有那个限制 但是,如果我使用这个构造函数,我将失去根据区域设置确定正确属性文件的功能 有人能帮我吗?您不

我有多个utf-8编码文件中的messages.properties文件(messages\u en\u US.properties,messages\u fr.properties,…)。在这些属性文件中,我有一些用于亚洲语言的属性文件。这意味着,字符不能用ISO-8859-1编码表示,必须用Unicode转义来表示。我不想这样做。根据下面链接中的文档,如果我使用接受读取器的构造函数,它没有那个限制

但是,如果我使用这个构造函数,我将失去根据区域设置确定正确属性文件的功能


有人能帮我吗?

您不应该直接实例化PropertyResourceBundle。改用


另请看下的第二个示例,了解如何在仍然使用分辨率层次结构的情况下加载替代格式。该示例用于加载XML属性,但应适用于使用UTF-8编码的InputStream。

您不应直接实例化PropertyResourceBundle。改用


另请看下的第二个示例,了解如何在仍然使用分辨率层次结构的情况下加载替代格式。该示例用于加载XML属性,但应适用于使用UTF-8编码的InputStream。

他们似乎真的希望您仍然使用native2ascii.:-(

通过这种方式,您可以将亚洲字符编码为\uxxx序列。ResourceBundle机制可以以这种格式加载它们

我们要做的是在UTF-8中编辑属性文件,构建脚本在这些文件上运行native2ascii


当您手动加载属性时,看到Java6最终支持属性的不同编码,如果这种支持向下(向上?)延伸到构建在属性上的其他部分,例如资源包,那就太好了。

看起来他们真的希望您仍然使用native2ascii-(

通过这种方式,您可以将亚洲字符编码为\uxxx序列。ResourceBundle机制可以以这种格式加载它们

我们要做的是在UTF-8中编辑属性文件,构建脚本在这些文件上运行native2ascii


当您手动加载属性时,看到Java6最终支持属性的不同编码,如果这种支持能够深入(向上?)到构建在属性上的其他部分,例如资源束,那就太好了。

So,ResourceBundle rb=ResourceBundle.getBundle(“myMessages”,locale).但是,如果我做了上述操作,我将坚持ISO-8859-1编码。我的亚洲字符集将不受支持。那么,我如何利用阅读器?我编辑了我的帖子,其中包含了一个指向
ResourceBundle.Control的指针,您应该能够使用它。有了这个控件,它就可以正常工作了。但是为什么他们需要让这变得如此困难呢?例如,为什么没有使用用户指定的编码加载属性文件的控件子类。没有人希望在生成过程中对它们进行native2ascii或编写额外的代码,以便能够在另一种编码中加载它们。同意,这比应该的要复杂得多。因此,ResourceBundle rb=ResourceBundle.getBundle(“myMessages”),地区).但是,如果我做了上述操作,我将坚持ISO-8859-1编码。我的亚洲字符集将不受支持。那么,我如何利用阅读器?我编辑了我的帖子,其中包含了一个指向
ResourceBundle.Control的指针,您应该能够使用它。有了这个控件,它就可以正常工作了。但是为什么他们需要让这变得如此困难呢?例如,为什么没有使用用户指定的编码加载属性文件的控件子类。没有人希望在构建过程中必须对其进行native2ascii或编写额外的代码,以便能够在另一种编码中加载它们。同意,这比应该的要复杂得多。