Java GWT i18n消息属性不显示特殊字符,如ß;

Java GWT i18n消息属性不显示特殊字符,如ß;,java,javascript,html,gwt,internationalization,Java,Javascript,Html,Gwt,Internationalization,我使用GWT i18n翻译消息: @DefaultLocale("en") public interface Messages extends com.google.gwt.i18n.client.Messages { @DefaultMessage("Size") String size(); } 对于德语,我有Messages\u de.properties文件 size=Größe äüö ÄÖÜ 在我的一个UIBinder模板中,我使用 <ui:text w

我使用GWT i18n翻译消息:

@DefaultLocale("en")
public interface Messages extends com.google.gwt.i18n.client.Messages {

    @DefaultMessage("Size")
    String size();

}
对于德语,我有
Messages\u de.properties
文件

size=Größe äüö ÄÖÜ
在我的一个UIBinder模板中,我使用

<ui:text with="{messages.size}"/>

当用户的浏览器是
de
时,我将显示
GrösseÄÖÖÖÜ
,而不是
GröeäÄÖÖÜ

我的工作区和.properties文件设置为UTF8

如何正确显示德语中的特殊字符
ß
,或者是否有办法包含ASCII码?


解决方案:设置CSS
文本转换时:大写
然后将
ß
转换为
SS

GWT始终为UTF8。因此,解决问题的最简单方法是,将工作区的编码设置为utf-8

或者选择您的消息属性,用鼠标右键单击并选择属性。使用参考资料将属性文件的编码设置为utf-8


这是Eclipse处理
属性
文件的方式存在问题。您可以将整个工作区设置为UTF-8,它仍然会将
属性
文件视为
ISO 8859-1
-因为。但是,GWT使用直接使用UTF-8的方法(不需要转义字符)

您必须单独替代此设置:

您可以将所有
*.properties
文件的默认编码更改为
UTF-8
(不要忘记点击
更新
按钮)


但请注意,这意味着将所有
属性
文件视为UTF-8
。因此,除非您确定这不会破坏任何内容,否则我会缩小文件关联范围,例如,缩小到
*Messages.properties
文件(如果您的所有翻译文件都有
Messages
后缀)。或者使用其他编辑器编辑属性文件。

是否检查了浏览器中的编码?我的所有文件都是utf8。您可以输入特殊字符作为utf8代码。这会奏效的。但这是另一个问题。刚刚检查了我的项目。像ä、ü等德语字母没有问题。像ä、ü、ö等德语字符显示为Ä、Ü、Ö,它们总是用大写字母。