文章插图
文章插图
文章插图
文章插图
文章插图
1.方式一遍历
演示案例1:遍历xml指定元素
import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;import org.testng.annotations.Test;import java.io.File;import java.util.List;public class Dom4j_ {/*** 遍历所有的student信息*/@Testpublic void listStus() throws DocumentException {//得到一个解析器SAXReader reader = new SAXReader();Document document = reader.read(new File("src/students.xml"));//1.得到rootElementElement rootElement = document.getRootElement();//2.得到rootElement的student节点List<Element> students = rootElement.elements("student");System.out.println(students.size());//2for (Element student : students) {//student就是student节点/元素//获取student节点的name节点Element name = student.element("name");//因为name只有一个,这里用element方法Element age = student.element("age");Element gender = student.element("gender");Element resume = student.element("resume");System.out.println("学生信息=" + name.getText() + " " +age.getText() + " " + gender.getText() + " " + resume.getText());}}}
文章插图
2.方式一查询
案例2:读取指定xml元素
import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;import org.testng.annotations.Test;import java.io.File;public class Dom4j_ {/*** 指定读取第一个学生的信息*/@Testpublic void readOne() throws DocumentException {//得到一个解析器SAXReader reader = new SAXReader();Document document = reader.read(new File("src/students.xml"));//1.得到rootElementElement rootElement = document.getRootElement();//2.获取第一个学生Element student = (Element) rootElement.elements("student").get(0);//3.输出该学生的信息System.out.println("学生信息=" +student.element("name").getText() + " " +student.element("age").getText() + " " +student.element("gender").getText() + " " +student.element("resume").getText());//4.获取student元素的属性System.out.println("id="+student.attributeValue("id"));}}
文章插图
- 如果想要省略层层取元素的步骤,直接在根节点取出指定的元素,可以使用xpath(https://dom4j.github.io/#xpath)
经验总结扩展阅读
- 华为nova9pro上市时间及价格_华为nova9pro官方最新曝光
- 微信支付v3接口的 官方 Java SDK
- .net 温故知新:【8】.NET 中的配置从xml转向json
- MySQL的下载、安装、配置
- 苹果13上市时间与价格_苹果13上市时间官方价格
- 荣耀50多久上市_荣耀50什么时候上市
- 【pytest官方文档】解读-开发可pip安装的第三方插件
- 华为台式电脑官网报价及图片_华为台式电脑官方售价是多少
- cf改名怎么改(cf被官方强制改名)
- 华为mate50发布时间确定_华为mate50官方首曝