Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 西班牙语字符显示不正确?_Java_Gwt_Internationalization_Gxt - Fatal编程技术网

Java 西班牙语字符显示不正确?

Java 西班牙语字符显示不正确?,java,gwt,internationalization,gxt,Java,Gwt,Internationalization,Gxt,我正在使用GWT。我实现了国际化以支持西班牙语。但西班牙字符不会被正确显示。例如:Teléfono巴士车显示为。 (见电话后的一些垃圾字符)。我正在使用IE浏览器 我是否需要配置任何其他设置?谢谢 我怀疑这可能是因为您的编辑器没有使用UTF-8编码 如果您使用的是Eclipse,您可以通过转到Window>Preferences>General>Content-Types将其配置为使用UTF-8作为*.properties 只需确保将默认编码值更改为UTF-8,如下所示 任何文本编辑器都会有类

我正在使用GWT。我实现了国际化以支持西班牙语。但西班牙字符不会被正确显示。例如:Teléfono巴士车显示为。 (见电话后的一些垃圾字符)。我正在使用IE浏览器


我是否需要配置任何其他设置?谢谢

我怀疑这可能是因为您的编辑器没有使用
UTF-8
编码

如果您使用的是Eclipse,您可以通过转到
Window>Preferences>General>Content-Types
将其配置为使用
UTF-8
作为
*.properties

只需确保将
默认编码
值更改为
UTF-8
,如下所示


任何文本编辑器都会有类似的设置,包括
vi

,因为字符串来自属性文件,所以ResourceBundle可能是PropertyResourceBundle的一个实例,它创建java.util.properties的一个空实例,然后通过一个“load”方法。PropertyResourceBundle有两个构造函数,一个接受InputStream,另一个接受Reader。构造函数只调用相应的“load”方法

请注意,采用InputStream的“load”方法假定属性文件的字符编码为ISO 8859-1(拉丁语1)。可以通过两种方式解决此问题:

  • 确保正在调用PropertyResourceBundle的属性构造函数,该构造函数接受读取器。使用适当的字符编码构造读取器
  • 使用Unicode转义符(\uxxx)对属性文件中的非ASCII字符进行编码

  • 确保数据始终经过编码
    UTF-8
    ,直到它显示在浏览器上。@adarshr,谢谢您的回复。我已经在我的主页的第行下方放置了字符串。字符串来自何处?您如何读取,等等?字符串来自属性文件(资源包)。更多代码将帮助我们找出错误所在。感谢您的回复。从属性文件读取值对我们来说很简单,我们不使用任何propertyresourcebundle。gwt本身为每个属性文件创建接口。我们只调用接口并从属性文件访问值。如果您无法控制esource bundle已实例化,简单的解决方案是在属性文件中使用Unicode转义。如果支持的语言只有英语和其他基于拉丁语的语言,如es、fr、de等,则Unicode转义会使文件无法被人读取。只对中文、韩文、阿拉伯文等使用Unicode转义。请给我一个示例考虑字符串TeleFuno BasCar?@ USE1016403:EUE的Unicode值是0x39(U+ 0039,在Unicode术语中)。将
    替换为
    \u0039
    。您可以在unicode.org上找到其他值。不过,警告一句:正如adarshr指出的那样,大量unicode转义会严重妨碍属性文件的可读性。