org.w3c.dom.Document -> java.io.File : Formatierung nicht schön

Cayla

Grünschnabel
Hallo!

Ich hab hier ein DOM-Document, das ich selbst zusammenbaue mit Hilfe von appendChild usw.
Am Ende schreibe ich dann den Inhalt des Documents in eine File und zwar so:
(doc ist das org.w3c.dom.Document,
file ist ein java.io.File)

TransformerFactory tranFactory = TransformerFactory.newInstance();
Transformer aTransformer = tranFactory.newTransformer();

Source src = new DOMSource(doc);
Result dest = new StreamResult(file);
aTransformer.transform(src, dest);

Das funktioniert auch wunderbar, alle Informationen aus dem doc werden in das file geschrieben.

Mein Problem:
Wenn ich die erzeugte File öffne, stehen sämtliche tags in einer Zeile. Es gibt keinen Zeilenumbruch, d.h. das zu lesen ist ziemlich nervig. Ich muss in meinem Projekt aber davon ausgehen, dass der User sich das erzeugte xml-Dokument nochmal anschauen will und evtl kleine Änderungen vornehmen will.
Weiß irgendjemand, wie man da Zeilenumbrüche nach jeden Tag reinbekommt?
Da müsste es doch irgendetwas "automatisches" geben, weil das Problem werden doch mehrere Leute haben, oder?
 
Das ohne Zeilenumbrüche ist eigentlich sinnvoll und wenn du das XML zB im Internet Explorer (od. anderer XML Editor/Viewer) öffnest, wird es ja schön formatiert.

Wenn es trotzdem sein soll, es sollte irgendwo etwas geben wie "pretty format"... Methode, etc. einfach mal die API od. Google durchstöbern.

Beste Grüße,
Billie
 
Danke für den Tipp mit dem "pretty"!
Ich hatte Google schon vorher durchsucht, war aber wenig erfolgreich. Ich schreib hier doch keine Frage rein, wenn ich nicht vorher schon mindestens ne halbe Stunde in Google gesucht hab....

Die Lösung ist wirklich einfach, ich musste nur eine Zeile zu meinem Code hinzufügen:
aTransformer.setOutputProperty(OutputKeys.INDENT, "yes");
 

Neue Beiträge

Zurück