xml文件简单读取,循环遍历

xml文件的简单读取出来生成dom4j.Document对象树,循环遍历获取节点

例子:

复制代码
import java.util.Iterator;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class Dom4jText {

    /**
     * @param args
     */
    public static void main(String[] args) {
        
        try {
            //创建解析器
            SAXReader saxReader=new SAXReader();
            //通过解析器将xml读取到内存中,生成对象树
            Document document=saxReader.read("conf/student.xml");
            //获取根节点
            Element root=document.getRootElement();
            //遍历根节点
            for(Iterator<Element> rootlter=root.elementIterator();rootlter.hasNext();){
                Element student=rootlter.next();
                for(Iterator<Element> innerlter=student.elementIterator();innerlter.hasNext();){
                    Element innerElt=innerlter.next();
                    String name=innerElt.getName();
                    String value=innerElt.getStringValue();
                    System.out.println("name========="+name+"======value========="+value);
                }
                System.out.println("-------------------------------");
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
复制代码

程序用到xml:

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<students>
    <student>
        <name>张三</name>
        <age>11</age>
        <adress>浙江省是打发斯蒂芬二人11</adress>
    </student>
    <student>
        <name>李四</name>
        <age>22</age>
        <adress>浙江省是打发斯蒂芬二人22</adress>
    </student>
    <student>
        <name>王二麻子</name>
        <age>33</age>
        <adress>浙江省是打发斯蒂芬二人33</adress>
    </student>
</students>
复制代码

 

posted @   沉默的老牛  阅读(6691)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示