dom4j:控制xml输出格式

org.dom4j.io.OutputFormat用于输出xml时的格式控制,通过对OutputFormat的参数设置,可以实现xml输出时换行、缩进、编码方式、是否显示xml声明等等控制。

package iadb;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class TestXml {

    public TestXml() throws DocumentException, IOException {
        OutputFormat XML_FORMAT = new OutputFormat();
        // 设置换行 为false时输出的xml不分行
        XML_FORMAT.setNewlines(true); 
        // 生成缩进 
        XML_FORMAT.setIndent(true); 
        // 指定使用tab键缩进
        XML_FORMAT.setIndent(" "); 
        // 不在文件头生成 XML 声明 () 
        XML_FORMAT.setSuppressDeclaration(true);
        // 不在文件头生成 XML 声明 ()中加入encoding 属性
        XML_FORMAT.setOmitEncoding(true);
        Document   document = new SAXReader().read(new File("src.xml")); 
        File xmlFile =new File("dst.xml");
        XMLWriter xmlWriter = null;
        try{
            xmlWriter = new XMLWriter(new FileOutputStream(xmlFile),XML_FORMAT);
            xmlWriter.write(document);
        }finally{
            // 注意这里要记得关闭XmlWriter
            if(xmlWriter!=null)xmlWriter.close();
        }
    }

}

参考链接:
http://lic0112.iteye.com/blog/2071812
http://mxdxm.iteye.com/blog/738515

你可能感兴趣的:(dom4j:控制xml输出格式)