码迷,mamicode.com
首页 > 编程语言 > 详细

java通过dom4j处理xml文档

时间:2014-08-05 00:33:28      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   java   io   文件   数据   

最近在用dom4j处理xml的数据接口,将java利用dom4j处理xml的过程记录下来。

导入jar包:dom4j-1.6.jar

下载地址:http://www.java2s.com/Code/JarDownload/dom4j/dom4j-1.6.jar.zip

自己写了个xml文档

 1 <school>
 2     <student>
 3         <name>老子</name>
 4         <no>20140804</no>
 5         <majors>
 6             <major>体育</major>
 7             <major>美术</major>
 8             <major>舞蹈</major>
 9         </majors>
10     </student>
11    <student>
12         <name>孙子</name>
13         <no>20140805</no>
14         <majors>
15             <major>数学</major>
16             <major>物理</major>
17             <major>英语</major>
18         </majors>
19     </student>
20 </school>

下面是java读取文件的代码

 1 package tools;
 2 
 3 import java.util.Iterator;
 4 import org.dom4j.Document;
 5 import org.dom4j.DocumentException;
 6 import org.dom4j.Element;
 7 import org.dom4j.io.SAXReader;
 8 
 9 public class XMLHandler {
10     
11     public static void main(String[] args) {
12         String path = "resource/hello.xml";//可以是本地路径,也可以是网络路径
13         SAXReader reader = new SAXReader(); 
14         Document doc = null;
15         try {
16             doc = reader.read(path); //获取整个文档
17         } catch (DocumentException e) {
18             e.printStackTrace();
19             return;
20         }
21         Element root = doc.getRootElement();//获取到文档的根节点即<school></school>
22         Iterator<Element> stus = root.elementIterator("student");//获取<sutdent></student>迭代
23         //Iterator<Element> stus = root.elementIterator();  因为school下只有student,这种方法也行
24         Element student;
25         while(stus.hasNext()) {
26             student = stus.next();
27             System.out.println("姓名:"+student.elementTextTrim("name"));//获取name子结点的值
28             System.out.println("学号:"+student.elementTextTrim("no"));//获取no子结点的值
29             
30             Element majors = student.element("majors");
31             Iterator<Element> major_it = majors.elementIterator("major");
32             String major_str = "";
33             Element major;
34             while(major_it.hasNext()) {
35                 major = major_it.next();
36                 major_str += major.getTextTrim() + " ";//获取自身结点的值
37             }
38             System.out.println("专业:"+major_str);
39         }
40         
41     }
42 }


显示结果

1 姓名:老子
2 学号:20140804
3 专业:体育 美术 舞蹈 
4 姓名:孙子
5 学号:20140805
6 专业:数学 物理 英语 

 

java通过dom4j处理xml文档,布布扣,bubuko.com

java通过dom4j处理xml文档

标签:style   blog   http   color   java   io   文件   数据   

原文地址:http://www.cnblogs.com/erbin/p/3891241.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!