Вопрос

В настоящее время у меня возникли проблемы со значениями немецкого умляута в полученном мной XML-документе.

Он отображает / сохраняет значение в виде "ü" вместо "ü".

Кодировка XML установлена на UTF-8 который должен быть способен отображать умлауты.

Также я не смог найти ни одной опции для установки локали в анализаторе SAX.

Есть ли какой-нибудь другой способ, которым я могу корректно сохранить значения?

кстати:Я использую eclipse в качестве IDE.

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

Заранее спасибо!

Это было полезно?

Решение

XML закодирован в UTF-8, но вы декодируете его с помощью ISO-8859-1.

Попробуйте использовать InputStream и другие "двоично" ориентированные API для XML.Избегайте использования Reader, или пытается преобразовать из byte[] к a String перед разбором XML.У вас гораздо больше шансов перепутать кодировку символов, чем у анализатора.

Другие советы

Установка кодировки XML в UTF-8 в объявлении XML - это одно, но другое дело - физическая кодировка XML-документа, т. Е. У вас может быть XML-файл с надписью <?xml version="1.0" encoding="utf-8"?> но сам файл все еще может быть закодирован ANSI (или что-то еще).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top