Java格式化输出Xml

Java中在格式化输出Xml时,需要dom4j-1.6.1.jar这个文件,读者可以自行在网上下载。

package com.zhj.creDbXml;

import java.io.IOException;
import java.io.StringReader;
import java.io.StringWriter;

import org.dom4j.Document;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class de {
	public String formatXML(String inputXML) throws Exception {
	    SAXReader reader = new SAXReader();
	    Document document = reader.read(new StringReader(inputXML));
	    String requestXML = null;
	    XMLWriter writer = null;
	    if (document != null) {
	      try {
	        StringWriter stringWriter = new StringWriter();
	        OutputFormat format = new OutputFormat(" ", true);
	        writer = new XMLWriter(stringWriter, format);
	        writer.write(document);
	        writer.flush();
	        requestXML = stringWriter.getBuffer().toString();
	      } finally {
	        if (writer != null) {
	          try {
	            writer.close();
	          } catch (IOException e) {
	          }
	        }
	      }
	    }
	    return requestXML;
	  }
}


在上面的代码中,创建一个SAX解析器reader,使用SAX将指定的数据流读入到document中。XMLWriter将普通流转换成Xml标准流,OutputFormat是用来规范我们要输出的Xml的格式。writer.write(document)是用来将Document输出到指定的输出流,然后将输出赋给String类型的字符串requestXml。然后返回该字符串。

利用上面的函数,我们可以将Xml文件的内容以格式化的方式输出到屏幕或是任何文件中。如果我们想要生成以及解析Xml文件,可从网上下载jdom-2.0.2.zip,这里提供的函数可以帮助我们生成Xml文件,以及解析Xml文件以获得其中对应数据,在下一篇博文中我和大家进一步探讨它的使用方法。



你可能感兴趣的:(Java格式化输出Xml)