dom4j学习笔记(一)

来源:互联网 发布:八极拳实战知乎 编辑:程序博客网 时间:2024/05/21 11:14

dom4j是一个性能非常不错的解析xml的开源框架.其解析性能高于sun提供的domAPI,而且使用起来也非常方便.值得学习!

下面,经创建ibm.xml这样一个xml文件为例,总结一下,怎么用dom4j创建一个xml文件.

ibm.xml代码如下:

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <catalog> 
  3. <!--An XML Catalog--> 
  4. <?target instruction?>
  5.   <journal title="XML Zone"  publisher="IBM developerWorks"> 
  6.         <article level="Intermediate" date="December-2001">
  7.             <title>Java configuration with XML Schema</title> 
  8.             <author> 
  9.                 <firstname>Marcello</firstname> 
  10.                 <lastname>Vitaletti</lastname> 
  11.             </author>
  12.         </article>
  13.   </journal> 
  14. </catalog>

新建一个测试类,XMLCreater,代码如下:

 

  1. package org.james.dom4j;
  2. import java.io.File;
  3. import java.io.FileWriter;
  4. import java.io.IOException;
  5. import org.dom4j.Document;
  6. import org.dom4j.DocumentHelper;
  7. import org.dom4j.Element;
  8. import org.dom4j.io.XMLWriter;
  9. public class XMLCreater {
  10.     /**
  11.      * @param args
  12.      */
  13.     public static void main(String[] args) {
  14.         Document doc=DocumentHelper.createDocument();
  15.         Element elemCatalog = doc.addElement("catalog");//创建根节点
  16.         elemCatalog.addComment("An XML Catalog");//添回注释
  17.         elemCatalog.addProcessingInstruction("target""text");//添加处理指令
  18.         Element elemJournal = elemCatalog.addElement("journal");//为elemCatalog元素添加子节点journal
  19.         elemJournal.addAttribute("title""XML Zone");//为journal设置属性title
  20.         elemJournal.addAttribute("publisher","IBM developerWorks");
  21.         
  22.         Element elemArticle = elemJournal.addElement("article");
  23.         elemArticle.addAttribute("level""Intermediate");
  24.         elemArticle.addAttribute("date""December-2001");
  25.         
  26.         Element elemTitle = elemArticle.addElement("title");
  27.         elemTitle.setText("Java configuration with XML Schema");//添加文本节点
  28.         
  29.         Element elemAuthor = elemArticle.addElement("author");
  30.         
  31.         Element elemFirstName = elemAuthor.addElement("firstname");
  32.         Element elemLastName = elemAuthor.addElement("lastname");
  33.         
  34.         elemFirstName.setText("Marcello");
  35.         elemLastName.setText("Vitaletti");
  36.         XMLWriter xmlWriter=null;
  37.         try {
  38.              xmlWriter = new XMLWriter(new FileWriter(new File("E://ibm.xml")));
  39.             xmlWriter.write(doc);
  40.         } catch (IOException e) {
  41.             e.printStackTrace();
  42.         }finally{
  43.             try {
  44.                 xmlWriter.close();
  45.             } catch (IOException e) {
  46.                 e.printStackTrace();
  47.             }
  48.         }
  49.         
  50.     }
  51. }
原创粉丝点击