首页 > 其他 > 详细

dom4j解析xml实例(2)

时间:2014-07-29 13:56:28      阅读:319      评论:0      收藏:0      [点我收藏+]

dom4j是一个java的XML API,类似jdom,用来读写XML文件,它性能优异、功能强大和极易使用等特点

所用jar包:dom4j-1.6.1.jar、jaxen-1.1-beta-6.jar

需要解析的xml文件:people.xml

<people city="shenzhen">  
    <student name="milton" age="22"></student>  
    <student name="lego" age="23"></student>  
    <teacher name="bruce" age="27"></teacher>  
    <teacher name="ziven" age="28"></teacher>  
</people>

 

java代码如下:

package demo5;

import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
  
public class Test01 {
    public static void main(String args[]) throws DocumentException {
        SAXReader reader = new SAXReader();
        Document document = reader.read(new File("D:/people.xml"));
        Element rootElm = document.getRootElement();
        //Element root1Elm = rootElm.element("city");
        @SuppressWarnings("rawtypes")
        List nodes = rootElm.elements("student");
        @SuppressWarnings("rawtypes")
		List nodess = rootElm.elements("teacher");
        for (@SuppressWarnings("rawtypes")
        Iterator it = nodes.iterator(); it.hasNext();) {
            Element elm = (Element) it.next();
            System.out.println("name:" + elm.attributeValue("name")
                    + " age:" + elm.attributeValue("age"));
        }
        for (@SuppressWarnings("rawtypes")
        Iterator it = nodess.iterator(); it.hasNext();) {
            Element elm = (Element) it.next();
            System.out.println("name:" + elm.attributeValue("name")
                    + " age:" + elm.attributeValue("age"));
        }
        System.out.println();
        try {
            Document doc = reader.read(new File("D:/people.xml"));
            @SuppressWarnings("rawtypes")
            List projects = doc.selectNodes("people/student");
            @SuppressWarnings("rawtypes")
			List projectss = doc.selectNodes("people/teacher");
            @SuppressWarnings("rawtypes")
            Iterator it = projects.iterator();
            while (it.hasNext()) {
                Element elm = (Element) it.next();
                System.out.println("name:" + elm.attributeValue("name")
                        + " age:" + elm.attributeValue("age"));
            }
            @SuppressWarnings("rawtypes")
            Iterator its = projectss.iterator();
            while (its.hasNext()) {
                Element elm = (Element) its.next();
                System.out.println("name:" + elm.attributeValue("name")
                        + " age:" + elm.attributeValue("age"));
            }
  
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
  
}

 

代码运行后结果如下:

bubuko.com,布布扣

dom4j解析xml实例(2),布布扣,bubuko.com

dom4j解析xml实例(2)

原文:http://www.cnblogs.com/henuyuxiang/p/3875086.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!