HTML кодировка и кодировка - PullRequest
0 голосов
/ 27 ноября 2011

Мне нужно создать приложение JSP, которое будет локализовано на нелатинские языки. Страница JSP содержит теги, которые извлекают некоторые элементы отображения из базы данных (MySQL), а другие - из пакета ресурсов (файл свойств, содержимое которого написано в Unicode, и я также попробовал UTF-8).

Проблема, на мой взгляд, заключается в том, что строка, возвращаемая из пакета ресурсов, похоже, помещает каждый байт кодовой точки Unicode / UTF-8 в свой собственный символ строки. Например, / u0620 занимает два символа в возвращаемой строке, первый символ имеет 0x06, а второй - 0x20. Строки, полученные из пакета ресурсов, имеют двойной размер.

Моя проблема в самом файле свойств или в resourceBundle?

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 27 ноября 2011

Если вы используете UTF-8, то символ UTF-8 на самом деле IS 2 байта. Независимо от того, обрабатывает ли язык программирования его как два байта или один символ, это не должно иметь значения для вашего реального кода.

Кроме того, избегайте использования UTF-16 или других форм Unicode. UTF-8 - это единственный «правильный» способ делать вещи в настоящее время.

Также, как указали bmargulies, вы можете использовать pageEncoding="utf-8"

...