2009-06-24 4 views
1

Мы реализуем i18n с использованием JSTL и столкнулись с проблемой, что тексты ресурсов, определенные в файле .properties и имеющие символы не ISO 8859 (например, inidic languages), не могут быть отображены тегом.Файлы ресурсов для языка с символами, отличными от ISO 8859

После погружения через код тега и класс BundleHelper мы обнаружили, что он внутренне использует метод ResourceBundle.getBundle, который, в свою очередь, использует PropertyResourceBundle для загрузки файла .properties в качестве комплекта ресурсов.

Это внутренне зависит от метода java.util.Properties # load (InputStream), который не поддерживает чтение символов, отличных от ISO 8859, и единственная работа, предназначенная для представления таких символов в шестнадцатеричном шестнадцатеричном формате/u hex hex hex, который довольно непрактично, если весь файл .properties предназначен для языка хинди!

Есть ли какая-нибудь работа для этого. Я попытался использовать XML-формат в файле .properties, но он не был распознан PropertyResourceBundle!

детали окружающей среды являются: Jdk 1,5, Weblogic 9,2

+0

Вы пытались использовать UTF-8? –

ответ

1

ли вам абсолютно имеют использовать JDK 1.5? Если вы можете переместиться до 1,6, вы можете использовать перегрузку load(Reader), которая позволит вам хранить файлы в других кодировках (например, UTF-8). Я не уверен, как это поместится с PropertyResourceBundle, по общему признанию.

Не забывайте, что даже работая с файлами ISO-8859-1, вам не нужно использовать этот формат для . Редактировать файл. Вы можете использовать native2ascii для преобразования файла из другой кодировки. Сохраните ваши файлы свойств источника как UTF-8, затем запустите native2ascii как часть вашей сборки. Например:

native2ascii -encoding UTF-8 Foo.properties.utf8 Foo.properties 
0

Запишите свои файлы в любом кодировку вы хотите и запустить их через native2ascii инструмент (который поставляется вместе с JDK именно для этой цели), как часть процесса сборки или развертывания.

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

  • Нет связанных вопросов^_^