我正在尝试从.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)
输出是: ùìåí
由于您有一个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)