在前边介绍DOM,SAX,PULL等等既然能解析,当然也能生成。不过这里介绍dom4j创建xml文件,简单易懂。
dom4j是独立的api,官网:http://www.dom4j.org/ 可以去这下载jar包,里边也有详细的例子。。
在这里就进行简单的介绍,够用就行。。
1.创建document :
Document document = DocumentHelper.createDocument();
2.添加节点
// 创建根节点并添加进文档
Element root = document.addElement("persons");
示例代码:
import java.io.IOException;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class XmlTest {
public XmlTest() {
// TODO Auto-generated constructor stub
}
public String createXML(int i){
String strXML = null;
Document document = DocumentHelper.createDocument();
// 创建根节点并添加进文档
Element root = document.addElement("persons");
for(int j=0;j<i;j++){
Element person = root.addElement("person");
person.addAttribute("id", "100"+i).addAttribute("location", "中原"+i+"区");
Element name = person.addElement("name");
name.setText("小明"+i);
Element age = person.addElement("age");
age.addText("1"+i); //值!!
}
//--------
StringWriter strWtr = new StringWriter();
OutputFormat format = OutputFormat.createPrettyPrint();//Format格式!!
format.setEncoding("UTF-8");
XMLWriter xmlWriter =new XMLWriter(strWtr, format);
try {
xmlWriter.write(document);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
strXML = strWtr.toString();
return strXML;
}
public static void main(String[] args) {
XmlTest test = new XmlTest();
String xmlStr = test.createXML(4);
System.out.println(xmlStr);
}
}
输出结果:
简单好用。。。。。。。。。