学习笔记——xml解析

2022-10-27

xml简析

(1)作用:配置文件

(2)XML含义:

    可扩展标记语言(可扩展就是指标签不止一套)

2022-10-28

使用实例:

步骤:

(1)首先创建一个module,之后在模块中创建一个文件夹“lib”,在里面放置解析xml文件的jar包。jar包为“dem4j-1.6.1.jar”。将jar包复制到lib中,右击点击“Add as Library”。在“Create Library”中的“Level”选择“Module Library”,点击“OK”.

(2)在src文件夹中创建一个文件,命名为“employees.xml”。在里面写入xml可扩展标记语言。

(3)在src文件夹中创建一个class类,命名为“Demo1”,在此类中创建一个解析器对象,对xml文件进行解析。

employees.xml

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<employees>
    <employee id="101">
        <name>张三</name>
        <age>18</age>
        <address>北京</address>
    </employee>
    <employee id="102">
        <name>李四</name>
        <age>20</age>
        <address>上海</address>
    </employee>
    <employee id="103">
        <name>王五</name>
        <age>19</age>
        <address>深圳</address>
    </employee>
</employees>
复制代码

Demo1

复制代码
package com.haha.demo4j;

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

import java.util.List;

public class Demo1 {
    public static void main(String[] args) throws DocumentException {
        //创建解析器对象
        SAXReader reader = new SAXReader();
        try {
            Document document = reader.read(Demo1.class.getClassLoader().getResourceAsStream("employees.xml"));
            Element root = document.getRootElement();
            Element employee = root.element("employee");
            Element name = employee.element("name");
            String text = name.getText();
            System.out.println("text=" + text);
            System.out.println("----------");
//            获得多个element对象
            List<Element> employees = root.elements("employee");
            for(Element element : employees){
                Element name1 = element.element("name");
                String text1 = name1.getText();
                System.out.println("text1="+text1);
            }
            System.out.println("-------------------");
            Element employee1 = root.element("employee");//第一个employee
            Attribute id = employee1.attribute("id");
            String value = id.getValue();
            System.out.println(value);
        }catch (DocumentException e){
            e.printStackTrace();
        }
    }
}
复制代码

    说明:在解析文件时,要将被解析的文件名,写正确。

posted @   努力是一种常态  阅读(63)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示