dom4j:控制xml輸出格式
阿新 • • 發佈:2019-01-11
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 version="1.0" encoding="UTF-8"?>)
XML_FORMAT.setSuppressDeclaration(true);
// 不在檔案頭生成 XML 宣告 (<?xml version="1.0" encoding="UTF-8"?>)中加入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();
}
}
}