Вы действительно должны сделать 2 отдельных шага, чтобы это работало:
- получение текста из вашего файла
.properties
в ваш код Java правильно и - получение текстаиз вашего Java-кода в браузер так, чтобы он его понимал.
Первый из них несколько странный: .properties
файлы определены для использования кодировки ISO-8859-1 , который не поддерживает произвольные символы Unicode, , но, к счастью, файл .properties
поддерживает те же экранирования Unicode, которые также поддерживает исходный код Java, а именно \uxxxx
.
Теперь написание этих escape-кодов вручную может стать неприятным, поэтому в основном есть две альтернативы:
- написать файл
.properties
с выбранной кодировкой (вероятно, UTF-8) и использовать native2ascii
, чтобы преобразовать его в кодировку пропппера - , используйте специальный редактор
.properties
, который уже делает это (и обычно немного больше) за кулисами
Как только это сработает (проверьте это в отладчике, посмотревИспользуя значения символов (String.charAt()
некоторых локализованных строк), вы должны убедиться, что браузер действительно получает данные правильным образом.
Самый простой способ здесьубедитесь, что вы используете кодировку UTF-8 для передачи данных в браузер, поскольку UTF-8 может представлять все возможные кодовые точки Unicode.
Если вы используете JSP для создания выходных данных, то вы можете использовать что-тонапример, чтобы указать, что вы хотите вывод UTF-8:
<%@ page contentType="text/html; charset=utf-8" language="java" %>
Подробнее см. в Учебное пособие по Java EE .