• Java如何使用DOM4j解析XML呢?


    转自:

    Java如何使用DOM4j解析XML呢?

    下文讲述DOM4j解析XML的方法分享,如下所示:

    DOM4j简介

    dom4j是一个开源库
    它用于处理XML、 XPath和XSLT
    dom4j基于Java平台,使用Java的集合框架
     全面集成了DOM,SAX和JAXP
    

    例:
    使用Iterator迭代解析xml

    //测试xml文件
    
    
        hello Text1
        hello Text2
        hello Text3
        world text1
        world text2
        world text3
    
    /**
     * dom4j读取并解析xml
     */
    public class Dom4JTest2
    {
        public static void main(String[] args) throws Exception
        {
            SAXReader saxReader = new SAXReader();
            Document document = saxReader.read(new File("test.xml"));
            // 获取根元素
            Element root = document.getRootElement();
            System.out.println("Root: " + root.getName());
    
            // 获取所有子元素
            List childList = root.elements();
            System.out.println("total child count: " + childList.size());
    
            // 获取特定名称的子元素
            List childList2 = root.elements("hello");
            System.out.println("hello child: " + childList2.size());
    
            // 获取名字为指定名称的第一个子元素
            Element firstWorldElement = root.element("world");
            // 输出其属性
            System.out.println("first World Attr: "
                    + firstWorldElement.attribute(0).getName() + "="
                    + firstWorldElement.attributeValue("name"));
            System.out.println("迭代输出-----------------------");
            // 迭代输出
            for (Iterator iter = root.elementIterator(); iter.hasNext();)
            {
                Element e = (Element) iter.next();
                System.out.println(e.attributeValue("name"));
            }
            System.out.println("用DOMReader-----------------------");
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db = dbf.newDocumentBuilder();
            // 注意要用完整类名
            org.w3c.dom.Document document2 = db.parse(new File("test.xml "));
            DOMReader domReader = new DOMReader();
    
            // 将JAXP的Document转换为dom4j的Document
            Document document3 = domReader.read(document2);
            Element rootElement = document3.getRootElement();
            System.out.println("Root: " + rootElement.getName());
        }
    }
  • 相关阅读:
    Hadoop生态圈中的Hive数据仓库技术
    Metis安装(5.0.1与4.0.3)
    SpringBoot整合Shiro
    二进制加法(位运算)
    Java+JSP基于ssm高校网上教材征订系统-计算机毕业设计
    第十一届蓝桥杯模拟赛第一期
    Android-IO加解密核心与dex文件改造过程分析
    几个小servlet程序
    2022中国DevOps社区峰会 走进国产数据库的技术创新实践
    第二章:求长方体数组,指定区间内的完全数,改进指定区间内的完全数
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/126192566