通过dom创建一个xml文件

来源:互联网 发布:虎牙直播软件 编辑:程序博客网 时间:2024/06/01 07:54
package com.domxmltest;import java.io.File;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.transform.OutputKeys;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult;import org.w3c.dom.Document;import org.w3c.dom.Element;public class CreateXML {public static void main(String[] args) {Document doc;//声明xml文档中的各个元素对象Element students,student;Element name=null;Element address=null;Element tel=null;Element email=null;try{//得到dom解析器的工厂实例DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();//从dom工厂实例获得dom解析器DocumentBuilder builder=factory.newDocumentBuilder();//创建文档树模型对象doc=builder.newDocument();//如果创建的文档树模型不为空if(null!=doc){//创建students元素students=doc.createElement(“students”);//创建student元素student=doc.createElement(“student”);//设置student元素的属性id的值为95003student.setAttribute(“id”, “95003″);//将student元素添加为students的子元素students.appendChild(student);//创建name元素name=doc.createElement(“name”);//将一个文本结点添加为name元素的子结点name.appendChild(doc.createTextNode(“Mr. Zhang”));//将name元素添加为student的子元素student.appendChild(name);address=doc.createElement(“address”);address.appendChild(doc.createTextNode(“Shangdong Qingdao”));student.appendChild(address);tel=doc.createElement(“tel”);tel.appendChild(doc.createTextNode(“(0532)888888″));student.appendChild(tel);email=doc.createElement(“email”);email.appendChild(doc.createTextNode(“xy21@xy21.info”));student.appendChild(email);//将students元素作为根元素添加到xml文档树中doc.appendChild(students);//将内存中的文档树保存为students.xml文档Transformer transformer=TransformerFactory.newInstance().newTransformer();//得到转换器//设置换行transformer.setOutputProperty(OutputKeys.INDENT, “yes”);//写入文件transformer.transform(new DOMSource(doc), new StreamResult(new File(“d:/student.xml”)));}}catch (Exception e) {e.printStackTrace();}}}

0 0
原创粉丝点击