Можно ли указать путь к каталогу с помощью файла свойств при использовании класса ResourceBundle в Java?
Я хочу поместить мои файлы свойств в какую-нибудь папку, но я не могу прочитать их, потому что мы можем указать только имя пакета в статическом методе getBundle() на объекте ResourceBundle.
Предположим, что bundle-это: myFile.свойства
Текущий путь: src
Я хочу сохранить файл свойств в: src / temp
Поэтому, когда я использую:
ResourceBundle.getBundle("temp/myfile", currentLocale);
Он выбрасывает исключение "не могу найти связку". Я хочу каким-то образом указать путь. Пожалуйста предложи мне какой-нибудь способ сделать это.
Спасибо
2 ответов:
Используйте это:
ResourceBundle.getBundle("temp.myfile", currentLocale);
baseName, поставляемое в вызовеResourceBundle.getBundle, должно быть полным именем класса. Поэтому он должен быть написан разделенными точками. Также обратите внимание, что это делаетtempпакетом в вашем коде java (что я не думаю, что это хорошая идея). Лучше поместить файл свойств в соответствующий пакет, напримерcom.xyz.abc. Затем вы можете получить к нему доступ, используяResourceBundle.getBundle("com.xyz.abc.myfile", currentLocale);
Возможно, вы используете неправильное имя файла (myfile != файл myfile).
Для файла
myFile.propertiesв каталогеtempна пути к классу этот код должен работать:ResourceBundle.getBundle("temp.myFile");
Comments