UTF-8 Problem in xml-parsing
Bin ich mit folgenden codes zum konvertieren von XML-Inhalte in UTF-8, aber Sie sind nicht ordnungsgemäß funktioniert:
1.
InputStream is = new ByteArrayInputStream(strXMLAlert.getBytes("UTF-8"));
Document doc = db.parse(is);
2.
InputSource is = new InputSource(new ByteArrayInputStream(strXMLAlert.getBytes()));
is.setCharacterStream(new StringReader(strXMLAlert));
is.setEncoding("UTF-8");
Document doc = db.parse(is);
wie werden Sie die Konvertierung von xml in einen String? meine Vermutung ist, dass Sie brechen, bevor dieser code auch zum laufen bekommt. wenn überhaupt möglich, nie konvertieren von xml-Daten auf chars oder Strings auf Ihrem eigenen.
InformationsquelleAutor divz | 2012-03-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen wir wohl ein bisschen mehr Informationen zu beantworten die Frage richtig. Zum Beispiel, welches problem sehen Sie? Welche Java-version verwendest du?
Aber die Ausweitung Ihres ersten Beispiel zu
In diesem Beispiel gibt es ein chinesisches Zeichen in der Zeichenfolge. Erfolgreich druckt
Dein zweites Beispiel sollte auch funktionieren, obwohl Sie den Inhalt doppelt. Entweder bieten Sie es als eine Reihe von bytes und stellen die Codierung, oder einfach nur geben Sie es als Zeichen (StringReader), und Sie brauchen nicht die Kodierung (da als Zeichen, es ist schon dekodierten bytes in Zeichen).
InformationsquelleAutor Mike Mansell