2015-09-08 2 views
0

Созданный экземпляр resourceBundle не соответствует языку requestd (zh_TW). В результате выбираются строки из резервных сообщений. Свойства. Что мне не хватает?ResourceBundle не соответствует запрошенному языку

Это не происходит с локали, которые не содержат подчеркивание (Ex: эс, пл, фр и т.д.)

Locale myLocale = new Locale("zh_TW"); 
ResourceBundle resourceBundle = ResourceBundle.getBundle("messages", myLocale); 
System.out.println("ResourceBundle locale : " + resourceBundle.getLocale()); 

Выход

По умолчанию локаль: en_US
ResourceBundle локали:

ответ

0

Класс Locale предоставляет три конструктора:

Locale(String language) 
Locale(String language, String country) 
Locale(String language, String country, String variant) 

Вы, скорее всего, нужно сделать следующее:

Locale myLocale = new Locale("zh", "TW"); 
+0

'TW' не является кодом страны для фарфора. 'cn' есть. zh_TW - традиционный китайский, вариант. –

0

отметить также, что при ResourceBundle.getBundle() разбирает файл свойств и находит недопустимый характер, она не тихо и падает обратно на файле свойств по умолчанию ,

Смежные вопросы