我正在尝试添加一个选项来更改程序中的语言,问题是我无法找到正确的使用路径,而且我一直都有
java.util.MissingResourceException:无法找到基名nameMenuFactory_pl.properties的捆绑包,locale pl
preprocessors
我已经尝试添加包的路径,并将资源包复制到创建的pacakge java / resource,但仍然出现错误。
答案 0 :(得分:0)
使用
ResourceBundle.getBundle("com.horstmann.violet.application.MenuFactory",locale)
或
ResourceBundle.getBundle("com/horstmann/violet/application/MenuFactory",locale)
答案 1 :(得分:0)
我认为你以不正确的方式指定bundle。应该没有后缀_pl,因为它应该从您的语言环境中自动添加。同样,应该没有.properties扩展名。这是要遵循的格式(来自下面给出的教程):
ResourceBundle labels = ResourceBundle.getBundle("LabelsBundle", currentLocale);
查看有关Java的更多信息:https://docs.oracle.com/javase/tutorial/i18n/resbundle/propfile.html
因此,要更改语言,您需要更改区域设置,即:
Locale locale = new Locale("pl");
myResources = ResourceBundle.getBundle("MenuFactory",locale);
有关语言环境和i18n的更多信息,请点击此处: https://docs.oracle.com/javase/tutorial/i18n/locale/create.html
Pozdrowienia