xml文件解析-Dom4j

DOM是Document Object Model的缩写,DOM模型就是把XML结构作为一个树形结构处理,从根节点开始,每个节点都可以包含任意个子节点。

  1. 创建一个SaxReader输入流,去读取xml配置文件,生成Document对象。

  1. 通过Document获取根元素

  1. 通过根元素获取对应标签对象

  1. 遍历处理对应标签

首先导入dom4j的jar包,这里用maven对jar包进行管理

<dependency>
    <groupId>dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>1.1</version>
</dependency>

xml文件

<books>
    <book sn="SN1354665">
        <name>母猪的产后护理</name>
        <author>佚名</author>
        <price>45</price>
    </book>
    <book sn="SN135466">
        <name>Java开发</name>
        <author>王老师</author>
        <price>45.5</price>
    </book>
</books>

读取xml文件

//1、读取books.xml
SAXReader saxReader=new SAXReader();
Element rootElement = null;
try {
    Document doc=saxReader.read("src/main/java/javaWeb/xml/books.xml");
    //2、通过Document获取根元素
    rootElement = doc.getRootElement();
} catch (DocumentException e) {
    e.printStackTrace();
}
//3、通过根元素获取book标签对象
//element 和 elements 都是通过标签名查找子元素
List<Element> books = rootElement.elements("book");
//4、遍历,处理每个book标签转化为Book
for (Element book:books){
    //asXML 将标签对象转换为字符串
    Element name=book.element("name");
    //getText:获取标签中的文本
    String sname= null;
    try {
        sname = name.getText();
    } catch (Exception e) {
        e.printStackTrace();
    }
    System.out.println(sname);
    //获取单标签中的内容
    String sn=book.attributeValue("sn");
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值