国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 互联网 > Dom生成Xml和解析Xml

Dom生成Xml和解析Xml

来源:程序员人生   发布时间:2014-11-15 04:41:31 阅读次数:2288次

xml这类文件格式在很多时候都是很合适我们用来存取数据的,所以利用程序来生成xml文件和解析xml文件就显得比较重要了。在dom中是把每个元素都看作是1个节点Node的,所有页面上的属性、元素等都是继承自Node的,所以当获得到的是1个Node,而你知道它实际的类型并需要使用的时候便可能会需要进行类型转换了。

Element root = document.getDocumentElement();//获得根节点

下面是代码:

 

生成xml:

Java代码
 收藏代码
  1. public void geneXmlByDom() throws Exception {  
  2.         //step1:取得1个DocumentBuilderFactory  
  3.         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  
  4.         //step2:取得1个DocumentBuilder  
  5.         DocumentBuilder db = factory.newDocumentBuilder();  
  6.         //step3:新建1个Document对象  
  7.         Document document = db.newDocument();  
  8.         //step4:创建1个根节点  
  9.         Element rootElement = document.createElement("Persons");  
  10.         for (int i=0;i<5;i++) {  
  11.             //step5:创建1个节点  
  12.             Element person = document.createElement("person");  
  13.             //step6:为该节点设定属性  
  14.             person.setAttribute("id""id_"+i);  
  15.             Element name = document.createElement("name");  
  16.             //为节点设定文本内容  
  17.             name.setTextContent("name_"+i);  
  18.             Element address = document.createElement("address");  
  19.             address.setTextContent("address_"+i);  
  20.             Element email = document.createElement("email");  
  21.             email.setTextContent("email_"+i);  
  22.             person.appendChild(name);  
  23.             person.appendChild(address);  
  24.             person.appendChild(email);  
  25.             //step7:为某1元素节点设立子节点  
  26.             rootElement.appendChild(person);  
  27.         }  
  28.         //step8:把刚刚建立的根节点添加到document对象中  
  29.         document.appendChild(rootElement);  
  30.         //step9:取得1个TransformerFactory对象  
  31.         TransformerFactory transformerFactory = TransformerFactory.newInstance();  
  32.         //step10:取得1个Transformer对象  
  33.         Transformer transformer = transformerFactory.newTransformer();  
  34.         //step11:把document对象用1个DOMSource对象包装起来  
  35.         Source xmlSource = new DOMSource(document);  
  36.         //step12:建立1个存储目标对象  
  37.         Result outputTarget = new StreamResult(new File("persons.xml"));  
  38.         //step13:生成相应的xml文件  
  39.         transformer.transform(xmlSource, outputTarget);  
  40.     }  

 

 生成的xml文件是这个模样

Xml代码
 收藏代码
  1. <?xml version="1.0" encoding="UTF⑻" standalone="no"?>  
  2. <Persons>  
  3.     <person id="id_0">  
  4.         <name>name_0</name>  
  5.         <address>address_0</address>  
  6.         <email>email_0</email>  
  7.     </person>  
  8.     <person id="id_1">  
  9.         <name>name_1</name>  
  10.         <address>address_1</address>  
  11.         <email>email_1</email>  
  12.     </person>  
  13.     <person id="id_2">  
  14.         <name>name_2</name>  
  15.         <address>address_2</address>  
  16.         <email>email_2</email>  
  17.     </person>  
  18.      生活不易,码农辛苦
    如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
    程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生