我在这里遇到了一个问题.
我是法国人,正在使用英文版的Windows XP.因此,我将区域选项设置为法语,但仍然具有英语UI.
我正在开发一个小型Java SE应用程序,并决定使用资源包将其国际化.
要显示正确的语言,我使用此函数创建包:
private static ResourceBundle bundle = ResourceBundle
.getBundle("locale.Strings", Locale.getDefault());
但是Locale.getDefault()函数返回区域设置(意思是:法语),而不是系统UI语言.因此,我的UI在英语环境中默认为法语.好吧,那不是我所期待的……
有谁知道恢复系统UI语言的独立于平台的方式?
提前致谢 !
编辑:修复本地到区域设置,谢谢.
解决方法:
这是Windows中的错误配置. Locale#getDefault()返回系统区域设置,而不是日期/时间格式化区域或位置.
在下面的Windows XP特定屏幕截图中,您可以将区域选项和语言设置为法语或任何您喜欢的. “高级”菜单中的下拉列表实际上设置了系统区域设置,在您的情况下应设置为英语.
不可否认,这在Windows XP中得到了很好的解释,Windows 7做得更好一些: