Java tutorial
//package com.java2s; import org.w3c.dom.*; import javax.xml.transform.*; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import java.io.*; public class Main { private final static TransformerFactory tf = TransformerFactory.newInstance(); public static void toWriter(Document doc, Writer writer) { if (doc == null || writer == null) { return; } try { Transformer tran = tf.newTransformer(); tran.setOutputProperty(OutputKeys.INDENT, "yes"); tran.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); Source src = new DOMSource(doc); Result res = new StreamResult(writer); tran.transform(src, res); } catch (Exception e) { e.printStackTrace(); } } }