ich habe beim Speichern eines DOMs in eine XML- Datei das Problem, daß Umlaute
nicht korrekt gespeichert werden. Das heißt, sie werden in der gespeicherten
Datei nicht angezeigt, und der Text wird verunstaltet.
Ich speichere die XML- Datei folgendermaßen ab:
OutputFormat format = new OutputFormat (DocumentToSave);
format.setPreserveSpace (true);
try
{
Writer wr = new BufferedWriter(new FileWriter(DateiName));
XMLSerializer ser = new XMLSerializer (wr, format);
ser.serialize (DocumentToSave);
wr.write ('\n');
wr.close ();
}
catch (java.io.IOException ioe)
{
}
DocumentToSave ist vom Typ Document.
Als Encoding ist in der XML + DTD UTF-8 angegeben.
Kann ich dem Programm (bzw. Serializer) angeben, welches Encoding er hernehmen
soll? In der gespeicherten XML- Datei steht allerdings auch UTF-8.
Danke,
Christian
--
__________________________________________________________
News suchen, lesen, schreiben mit http://newsgroups.web.de
> ich habe beim Speichern eines DOMs in eine XML- Datei das Problem, daß
Umlaute
> nicht korrekt gespeichert werden. Das heißt, sie werden in der
gespeicherten
> Datei nicht angezeigt, und der Text wird verunstaltet.
> Als Encoding ist in der XML + DTD UTF-8 angegeben.
> Kann ich dem Programm (bzw. Serializer) angeben, welches Encoding er
hernehmen
> soll? In der gespeicherten XML- Datei steht allerdings auch UTF-8.
Du MUSST "ISO8859 irgendwas" bei "encoding" angeben, damit die Umlaute
korrekt gespeichert werden.
Die genaue Bezeichnung hab ich nicht, such mal einfach bei google danach.
<?xml version="1.0" encoding="ISO-8859-1" ?>
ist gemeint.
Gruss
Sven
das funktioniert auch nicht. Java speichert die Datei automatisch im UTF-8
Encoding (<?xml version="1.0" encoding="UTF-8"?> steht in der XML- File). Man muß
wohl beim Speichern das Encoding mit angeben können!
--
> Hallo beisammen,
>
>
> ich habe beim Speichern eines DOMs in eine XML- Datei das Problem, daß Umlaute
> nicht korrekt gespeichert werden. Das heißt, sie werden in der gespeicherten
> Datei nicht angezeigt, und der Text wird verunstaltet.
>
>
> Ich speichere die XML- Datei folgendermaßen ab:
>
>
>
>
> OutputFormat format = new OutputFormat (DocumentToSave);
> format.setPreserveSpace (true);
>[...]
Hallo christian,
falls du Xerces verwendest kannst Du das enconding im constructor
angeben:
public OutputFormat(Document doc, String encoding, boolean indent)
Gruss,
MArkus
--
Java-FAQ: http://www.dclj.de (da werden Sie geholfen!)