Hallo,
ich muss eine XML Datei aus einem Java-Programm heraus generieren. Das erstellen des Dokumentes klappt auch wunderbar. Das Problem ist nur, dass in der XML Datei alles in eine Zeile geschrieben wird.
Ich möchte jedoch nach jedem XML-Tag einen Zeilenumbruch einfügen. Hab jetzt schon ein paar Stunden gegoogelt (Stichwort: java result xml carriage return). Keiner der Treffer hat mich bislang weitergebracht. Jemand eine Idee...?
ich muss eine XML Datei aus einem Java-Programm heraus generieren. Das erstellen des Dokumentes klappt auch wunderbar. Das Problem ist nur, dass in der XML Datei alles in eine Zeile geschrieben wird.
Ich möchte jedoch nach jedem XML-Tag einen Zeilenumbruch einfügen. Hab jetzt schon ein paar Stunden gegoogelt (Stichwort: java result xml carriage return). Keiner der Treffer hat mich bislang weitergebracht. Jemand eine Idee...?
Java:
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class GenerateXML {
public void generateXMLCode() {
try {
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
doc.setXmlStandalone(true);
Element Document = doc.createElement("Document");
doc.appendChild(Document);
Attr AttrDocument = doc.createAttribute("TEST");
AttrDocument.setValue("TEST");
Document.setAttributeNode(AttrDocument);
// .
// .
// .
// usw.
// .
// .
// .
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\Test\\File.xml"));
transformer.transform(source, result);
System.out.println("Datei erfolgreich generiert!");
} catch (ParserConfigurationException pce) {
pce.printStackTrace();
} catch (TransformerException tfe) {
tfe.printStackTrace();
}
}
}
Zuletzt bearbeitet von einem Moderator: