繁体   English   中英

Java国际化

[英]Internationalization in Java

我正在尝试在程序中使用I18N,但无法正常工作。 控制台不会显示德语符号,而是显示“?”。

这是我的代码:

import java.util.Locale;
import java.util.ResourceBundle;

public class LocaleDemo {

public static void main(String[] args) {

            Locale l = new Locale("ge", "GE");
            ResourceBundle r = ResourceBundle.getBundle("Bundle_ge");
            displayValues(r);
        }

public static void displayValues(ResourceBundle bundle) {
    System.out.println("hello message:" + bundle.getString("wish"));
}
}

文件Bundle_ge.properties包含以下文本: wish=großer

结果如下:

在此处输入图片说明

我怎么了 先感谢您。

消息束使用ISO-8859-1编码读取。 因此,它们必须存储在ISO-8859-1中。 确保它们是。 您最有可能将其存储为UTF-8 ?!

或者-将unicode代码用于特殊字符。 对于德国变音符和深圳:

ä = \u00e4
Ä = \u00c4
ö = \u00f6
Ö =\u00d6
ü = \u00fc
Ü = \u00dc
ß = \u00df

有一些工具可以自动转换资源束。 即IntelliJ中的Resource Bundle Editor为您做到这一点。

看看是否能解决您的问题。

尝试在“设置” /“编辑器” /“文件编码”中进行设置。 可能您将需要再次保存文件。

https://www.jetbrains.com/help/idea/configuring-encoding-for-properties-files.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM