Umlaut in Java SAX-Parser
-
13-09-2019 - |
Frage
Ich bin derzeit Probleme mit deutschem Umlaut-Wert in einem XML-Dokument, das ich erhielt.
Es zeigt / speichert den Wert als " ü " anstelle eines " ü ".
Die XML-Kodierung ist auf UTF-8 , welche die Anzeige Umlaute fähig sein sollte.
Auch konnte ich keine Möglichkeit finden, ein Gebietsschema auf der SAX-Parser zu setzen.
Gibt es eine andere Art, wie ich die Werte richtig speichern machen?
btw: Ich bin mit Eclipse als IDE.
Alle Hilfe wird sehr geschätzt!
Vielen Dank im Voraus!
Lösung
Die XML-codiert in UTF-8, aber Sie sind Decodierung mit ISO-8859-1.
Versuchen InputStream
und anderen „binären“ -orientierten APIs für XML zu verwenden. Vermeiden Sie eine Reader
verwenden oder versuchen, von byte[]
zu einem String
zu konvertieren, bevor das Parsen von XML. Sie sind viel eher die Zeichenkodierung als der Parser zu versauen ist.
Andere Tipps
Einstellung XML-Kodierung UTF-8 in XML-Deklaration ist die eine Sache, aber eine andere Sache ist die physikalische Codierung des XML-Dokument also können Sie eine XML-Datei, die <?xml version="1.0" encoding="utf-8"?>
sagt aber die Datei selbst noch ANSI codiert werden könnte (oder was auch immer).