How to save parsed and changed DOM document in xml file? How to save parsed and changed DOM document in xml file? xml xml

How to save parsed and changed DOM document in xml file?


Something like this works:

Transformer transformer = TransformerFactory.newInstance().newTransformer();Result output = new StreamResult(new File("output.xml"));Source input = new DOMSource(myDocument);transformer.transform(input, output);


That will work, provided you're using xerces-j:

public void serialise(org.w3c.dom.Document document) {  java.io.ByteArrayOutputStream data = new java.io.ByteArrayOutputStream();  java.io.PrintStream ps = new java.io.PrintStream(data);  org.apache.xml.serialize.OutputFormat of =                      new org.apache.xml.serialize.OutputFormat("XML", "ISO-8859-1", true);  of.setIndent(1);  of.setIndenting(true);  org.apache.xml.serialize.XMLSerializer serializer =                      new org.apache.xml.serialize.XMLSerializer(ps, of);  // As a DOM Serializer  serializer.asDOMSerializer();  serializer.serialize(document);  return data.toString();}


That will give you possibility to define xml format

new XMLWriter(new FileOutputStream(fileName),              new OutputFormat(){{                        setEncoding("UTF-8");                        setIndent("    ");                        setTrimText(false);                        setNewlines(true);                        setPadText(true);              }}).write(document);