尝试获取希伯来语值时,Java .properties文件乱码

Ben*_*nyz 1 java encoding

我正在尝试从.properties文件中读取希伯来语值,我得到了胡言乱语.我尝试了几种方法,包括更改文件的编码(Cp1255,ISO-8859-8,UTF-8),向参数添加-file.encoding并没有任何帮助.

这个问题是在我们从IAS(OC4J容器)迁移到Weblogic期间提出的,我注意到javascript消息(从.properties文件中读取)显示为???? ???,这在OC4J上不会发生.但是,这仅适用于从.properties文件读取的数据,其他所有内容都显示正常.

我一直在谷歌上搜索几天,但我还没有找到解决方案.

编辑:我在家里尝试的

ResourceBundle rb = ResourceBundle.getBundle("test");
System.out.println(rb.getString("test"));
Run Code Online (Sandbox Code Playgroud)

这就是test.properties的样子:

test ????
Run Code Online (Sandbox Code Playgroud)

输出是: ùìåí

Fog*_*zie 5

由于您有一个ResourceBundle实例,您可以使用以下命令获取ISO-8859-1编码的String:

String strISO = rb.getString("test");
Run Code Online (Sandbox Code Playgroud)

然后,您可以将其转换为UTF-8并使用以下方式打印:

System.out.println(new String(strISO.getBytes("ISO-8859-1"), "UTF-8"));
Run Code Online (Sandbox Code Playgroud)