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文件以获得其中对应数据,在下一篇博文中我和大家进一步探讨它的使用方法。