首页 > 代码库 > Dom4j解析xml

Dom4j解析xml

 1 /***********************************************************   
 2 * @Title      : Generate.java 
 3 * @Package    : lsg.huawei.xml 
 4 * @Description: TODO(用一句话描述该文件做什么) 
 5 * @author     : liang shan guang 
 6 * @date       : 2017年1月22日 上午1:00:14 
 7 * @version    : V1.0   
 8 ***********************************************************/
 9 package lsg.huawei.xml;
10 
11 import java.io.FileOutputStream;
12 import java.io.FileWriter;
13 import org.dom4j.Document;
14 import org.dom4j.DocumentHelper;
15 import org.dom4j.Element;
16 import org.dom4j.io.OutputFormat;
17 import org.dom4j.io.XMLWriter;
18 
19 /*********************************************************** 
20 * @ClassName   : Generate 
21 * @Description : 生成xml文档 
22 * @author      : liang shan guang
23 * @date        : 2017年1月22日 上午1:00:14 
24 ***********************************************************/
25 public class Generate
26 {
27     public static String currentPath = System.getProperty("user.dir");
28     public static String xmlFolder = currentPath+"\\file\\";
29     /************************************************************* 
30     * @Title      : way1 
31     * @Description: 创建xml文档 的方式1
32     * @param@throws Exception  
33     * @return     : void 返回类型 
34     * @author     : liang shan guang 
35     * @date       : 2017年1月22日 上午1:12:44 
36     * @version    : V1.0 
37     *************************************************************/
38     public static void way1() throws Exception
39     {
40         // 第一种方式:创建文档,并创建根元素
41         // 创建文档:使用了一个Helper类
42         Document document = DocumentHelper.createDocument();
43         
44         // 创建根节点并添加进文档
45         Element root = DocumentHelper.createElement("student");
46         document.setRootElement(root);
47         root.addAttribute("婚礼", "两家人");//为根节点添加属性
48         Element bride = root.addElement("新郎"); 
49         bride.addAttribute("name", "梁山广");
50         Element brideness = root.addElement("新娘 ");
51            brideness.addAttribute("name", "王蕊");
52         // 输出
53         OutputFormat format = new OutputFormat("    ", true);// 设置缩进为4个空格,并且另起一行为true
54         // 输出方式1,记得要调用flush()方法,否则输出的文件中显示空白
55         XMLWriter xmlWriter = new XMLWriter(new FileWriter(xmlFolder+"student.xml"),format);
56         xmlWriter.write(document);
57         xmlWriter.flush();
58         // close()方法也可以
59     }
60     /************************************************************* 
61     * @Title      : way2 
62     * @Description: 创建xml文档的方式2
63     * @param@throws Exception  
64     * @return     : void 返回类型 
65     * @author     : liang shan guang 
66     * @date       : 2017年1月22日 上午1:13:01 
67     * @version    : V1.0 
68     *************************************************************/
69     public static void way2() throws Exception
70     {
71          // 添加根节点的第二种方式:创建文档并设置文档的根元素节点
72         Element root2 = DocumentHelper.createElement("student");
73         Document document2 = DocumentHelper.createDocument(root2);
74 
75         // 添加属性
76         root2.addAttribute("name", "zhangsan");//为当前节点添加属性
77         // 添加子节点:add之后就返回这个元素
78         Element helloElement = root2.addElement("hello");
79         Element worldElement = root2.addElement("world");
80 
81         helloElement.setText("hello Text");
82         worldElement.setText("world text");
83 
84         // 输出方式2:输出到文件
85         OutputFormat format = new OutputFormat("    ", true);// 设置缩进为4个空格,并且另起一行为true
86         XMLWriter xmlWriter2 = new XMLWriter(new FileOutputStream(xmlFolder+"student2.xml"), format);
87         xmlWriter2.write(document2);
88         
89     }
90     public static void main(String[] args) throws Exception
91     {
92 
93        
94 
95     }
96 }

 

Dom4j解析xml