ResourceBundle getLocale().getDisplayLanguage() returns 空字符串
ResourceBundle getLocale().getDisplayLanguage() returns empty String
我正在尝试使我的应用程序国际化,我开始使用 ResourceBundle
和 Locale
练习,使用一个简单的函数创建一个 ResourceBundle rb
和默认的 Locale
] 并在打印语言后:
private void loadView() {
ResourceBundle rb = ResourceBundle.getBundle("languages_"+Locale.getDefault());
System.out.println("Language: "+rb.getLocale().getDisplayLanguage());
}
我有不同的资源包属性文件以 languages_ 开头:
Properties files
当我调用函数 loadView 时,它不会打印语言。它什么都不打印。
可能是什么问题?
您的代码要么根本不指定语言环境,以允许 Java 解析当前语言环境
ResourceBundle rb = ResourceBundle.getBundle("languages");
或使用Locale
参数代替字符串连接
ResourceBundle rb = ResourceBundle.getBundle("languages", Locale.getDefault());
我正在尝试使我的应用程序国际化,我开始使用 ResourceBundle
和 Locale
练习,使用一个简单的函数创建一个 ResourceBundle rb
和默认的 Locale
] 并在打印语言后:
private void loadView() {
ResourceBundle rb = ResourceBundle.getBundle("languages_"+Locale.getDefault());
System.out.println("Language: "+rb.getLocale().getDisplayLanguage());
}
我有不同的资源包属性文件以 languages_ 开头: Properties files
当我调用函数 loadView 时,它不会打印语言。它什么都不打印。
可能是什么问题?
您的代码要么根本不指定语言环境,以允许 Java 解析当前语言环境
ResourceBundle rb = ResourceBundle.getBundle("languages");
或使用Locale
参数代替字符串连接
ResourceBundle rb = ResourceBundle.getBundle("languages", Locale.getDefault());