Serializing XML DOMs using Xerces/Xalan

import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;

//Serialization classes
import org.apache.xml.serialize.XMLSerializer;
import org.apache.xml.serialize.OutputFormat;

public class XMLUtils {

/** Test document,not pretty-print formatted */
public static final String TEST_DOC = "<MyDoc \n\n\n"
+ "name=\"test\">\n\n\n"
+ "<Ninja><Monkey>1</Monkey><Monkey>2</Monkey>\n"
+ "</Ninja></MyDoc>";

public static void main(String[] args) throws Exception {
Document doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder()
.parse(new ByteArrayInputStream(TEST_DOC.getBytes()));
//File output = File.createTempFile("SerializeTest",".xml");
File output = new File("D:\\SerializeTest.xml");
FileOutputStream out = new FileOutputStream(output);
OutputFormat outputFormat = new OutputFormat();

outputFormat.setomitComments(false);
outputFormat.setIndenting(true);
outputFormat.setIndent(4);
outputFormat.setPreserveSpace(false);

XMLSerializer serializer = new XMLSerializer(outputFormat);
serializer.setoutputByteStream(out);
serializer.serialize(doc);
out.close();
System.out.println("Output is pretty printed at: "
+ output.getCanonicalPath());
}

}

说明:import org.apache.xml.serialize.XMLSerializer;
import org.apache.xml.serialize.OutputFormat;

来自:xercesImpl.jar

文章来源:http://stackoverflow.org/wiki/Serializing_XML_DOMs_using_Xerces/Xalan

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念