Java自动创建XML

[size=large]

package test;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.io.StringWriter;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

import com.sun.org.apache.xml.internal.serialize.OutputFormat;
import com.sun.org.apache.xml.internal.serialize.XMLSerializer;

public class CreateXml {

/**
* @param args
* @throws ParserConfigurationException
*/
public static void main(String[] args) throws ParserConfigurationException {
//
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
//
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.newDocument();
// 创建根元素 root
Element root = doc.createElement("Student");
// 创建子元素 name
Element item = doc.createElement("name");
// 创建子元素的文本
item.appendChild(doc.createTextNode("wangyanping"));
// 为根元素添加节点
root.appendChild(item);
// 创建age元素
item = doc.createElement("age");
item.appendChild(doc.createTextNode("28"));
// 为根元素添加age节点
root.appendChild(item);
// high
item = doc.createElement("high");
item.appendChild(doc.createTextNode("180cm"));
root.appendChild(item);

item = doc.createElement("score");
// 创建score的子元素lessons
Element lessons = doc.createElement("lessons");
// 创建lessons的子元素lesson
Element lesson = doc.createElement("java");
// 为子元素添加文本
lesson.appendChild(doc.createTextNode("90"));
// 把子元素添加到父节点上
lessons.appendChild(lesson);
// 把子元素添加到父节点上
item.appendChild(lessons);

lessons = doc.createElement("lessons");
lesson = doc.createElement("struts");
lesson.appendChild(doc.createTextNode("80"));
lessons.appendChild(lesson);
item.appendChild(lessons);

lessons = doc.createElement("lessons");
lesson = doc.createElement("hibernet");
lesson.appendChild(doc.createTextNode("100"));
lessons.appendChild(lesson);
item.appendChild(lessons);

root.appendChild(item);
// 为文档添加根节点
doc.appendChild(root);
// 指定输出格式
OutputFormat format = new OutputFormat(doc, "utf-8", true);
StringWriter stringOut = new StringWriter();
XMLSerializer serial = new XMLSerializer(stringOut,format);
// 将DOM数转化成字符串
try {
serial.asDOMSerializer();
serial.serialize(doc.getDocumentElement());
// 创建文件输出流
PrintStream ps = new PrintStream(new FileOutputStream("new.xml"));
// 输出xml
ps.println(stringOut.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}

}

[/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值