试图用希伯来语获取值时,Java.properties文件乱七八糟
我试图从一个.properties文件中读取希伯来语值,结果弄得乱七八糟。我尝试了几种方法,包括更改文件的编码(Cp1255、ISO-8859-8、UTF-8),在参数中添加-file.encoding,但没有任何帮助 这个问题是在我们从IAS(OC4J容器)迁移到Weblogic的过程中提出的,我注意到javascript消息(从.properties文件读取)显示为试图用希伯来语获取值时,Java.properties文件乱七八糟,java,encoding,Java,Encoding,我试图从一个.properties文件中读取希伯来语值,结果弄得乱七八糟。我尝试了几种方法,包括更改文件的编码(Cp1255、ISO-8859-8、UTF-8),在参数中添加-file.encoding,但没有任何帮助 这个问题是在我们从IAS(OC4J容器)迁移到Weblogic的过程中提出的,我注意到javascript消息(从.properties文件读取)显示为,这不会发生在OC4J上。但是,这只适用于从.properties文件读取的数据,其他所有内容都显示良好 我已经在谷歌上搜索了几
代码>,这不会发生在OC4J上。但是,这只适用于从.properties文件读取的数据,其他所有内容都显示良好
我已经在谷歌上搜索了几天,但还没有找到解决办法
编辑:
我在家里试过什么
ResourceBundle rb = ResourceBundle.getBundle("test");
System.out.println(rb.getString("test"));
这就是test.properties的外观:
test שלום
输出为:和属性一样,ResourceBundle的文件应采用ISO 8859-1编码或\uxxx格式。有关ResourceBundle的更多信息,请参见文件应采用ISO 8859-1编码或\uxxx格式,就像属性一样。请参阅中的详细信息,因为您有一个ResourceBundle实例,可以通过以下方式获得ISO-8859-1编码字符串:
String strISO = rb.getString("test");
然后,您可以将其转换为UTF-8,并使用以下方法进行打印:
System.out.println(new String(strISO.getBytes("ISO-8859-1"), "UTF-8"));
由于您有一个ResourceBundle实例,因此可以通过以下方式获得ISO-8859-1编码字符串:
String strISO = rb.getString("test");
然后,您可以将其转换为UTF-8,并使用以下方法进行打印:
System.out.println(new String(strISO.getBytes("ISO-8859-1"), "UTF-8"));
我们需要看看破碎的东西的碎片。读取文件的代码在哪里?.properties文件是什么样子的?没什么特别的:属性文件是这样的:someKeyשלום,我使用ResourceBundle.getString(“someKey”)(这是我在家里的计算机上使用的,这也会产生乱码)这些信息应该放在你的问题里,否则没人能帮你。我们需要看看有什么东西坏了。读取文件的代码在哪里?.properties文件是什么样子的?没什么特别的:属性文件是这样的:someKeyשלום,我使用ResourceBundle.getString(“someKey”)(这是我在家里的计算机上使用的,这也会产生乱码)这些信息应该放在你的问题中,否则没人能帮你。好把戏!如果你不能修改包本身,最好把它放在后面的口袋里。好把戏!如果你不能修改包本身,最好把它放在后面的口袋里。