[英]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.