小编0ri*_*nal的帖子

Java 属性: � 显示而不是 ä

我有一个包含以下键和值的属性文件:

elsi.log.status.1              = Keine Änderungen
Run Code Online (Sandbox Code Playgroud)

但是字符 Ä 没有正确显示在我的网页上。输出是 �

但是如果我使用 faces-config 然后直接显示来自 xhtml 的消息,则该消息的显示方式与属性文件中的相同

这是用于从 java 中的属性文件获取值的方法。当我调试时,这里的值已经错了(bundle.getString(key) 返回 Keine �nderungen)

    public static String getString(String key) {
    try {
        Locale locale = CurrentEnvironment.getLocale();
        ResourceBundle bundle = ResourceBundle.getBundle(BUNDLE_NAME, locale);
        if (bundle != null) {
            return bundle.getString(key);
        }
    } catch (MissingResourceException e) {
        return '!' + key + '!';
    }
    return '!' + key + '!';
}
Run Code Online (Sandbox Code Playgroud)

使用 xhtml 直接输出作品

<h:outputText value="#{messages.elsi_copyright}" />
Run Code Online (Sandbox Code Playgroud)

我还注意到用十六进制代码替换属性文件中的字符有帮助,但我想知道是否可以这样做。

谢谢你的帮助

java properties

0
推荐指数
1
解决办法
3768
查看次数

标签 统计

java ×1

properties ×1