1 package org.zzn.dom4j;
2
3 import java.io.File;
4 import java.io.FileWriter;
5 import java.io.IOException;
6
7 import org.dom4j.Document;
8 import org.dom4j.DocumentHelper;
9 import org.dom4j.Element;
10 import org.dom4j.io.OutputFormat;
11 import org.dom4j.io.XMLWriter;
12
13 public class XmlDom4J {
14 public void generateDocument() {
15
16 // 使用 DocumentHelper 类创建一个文档实例。 DocumentHelper 是生成 XML 文档节点的 dom4j API
17 // 工厂类。
18 Document document = DocumentHelper.createDocument();
19
20 // 使用 addElement() 方法创建根元素 catalog 。 addElement() 用于向 XML 文档中增加元素。
21 //<catalog></catalog> root层的。
22 Element catalogElement = document.addElement("catalog");
23
24 // 在 catalog 元素中使用 addComment() 方法添加注释“An XML catalog”。
25 //<!--An XML catalog--> 添加注释!
26 catalogElement.addComment("An XML catalog");
27
28 // 在 catalog 元素中使用 addProcessingInstruction() 方法增加一个处理指令。
29 catalogElement.addProcessingInstruction("target", "text");
30
31 // 在 catalog 元素中使用 addElement() 方法增加 journal 元素。
32 Element journalElement = catalogElement.addElement("journal");
33
34 // 使用 addAttribute() 方法向 journal 元素添加 title 和 publisher 属性。
35 journalElement.addAttribute("title", "XML Zone");
36 journalElement.addAttribute("publisher", "IBM developerWorks");
37
38 //向 article 元素中添加 journal 元素。
39 Element articleElement = journalElement.addElement("article");
40
41 //为 article 元素增加 level 和 date 属性。
42 articleElement.addAttribute("level", "Intermediate");
43 articleElement.addAttribute("date", "December-2001");
44
45 //向 article 元素中增加 title 元素。
46 Element titleElement = articleElement.addElement("title");
47
48 //使用 setText() 方法设置 article 元素的文本。
49 titleElement.setText("Java configuration with XML Schema");
50
51 //在 article 元素中增加 author 元素。
52 Element authorElement = articleElement.addElement("author");
53
54 //在 author 元素中增加 firstname 元素并设置该元素的文本。
55 Element firstNameElement = authorElement.addElement("firstname");
56 firstNameElement.setText("Marcello");
57
58 //在 author 元素中增加 lastname 元素并设置该元素的文本。
59 Element lastNameElement = authorElement.addElement("lastname");
60 lastNameElement.setText("Vitaletti");
61
62 //可以使用 addDocType() 方法添加文档类型说明。
63 // document.addDocType("catalog", null, "file://e:/Dtds/catalog.dtd");
64
65 try{
66 OutputFormat format = OutputFormat.createPrettyPrint();
67 format.setEncoding("GBK");
68 XMLWriter output = new XMLWriter(
69 new FileWriter( new File("e:/catalog.xml")),format);
70 output.write( document );
71 output.close();
72 }
73 catch(IOException e){System.out.println(e.getMessage());}
74 }
75
76 public static void main(String[] argv){
77 XmlDom4J dom4j=new XmlDom4J();
78 dom4j.generateDocument();
79
80 }
81 }
82
运行此程序所需要的包,dom4j.jar