dom4j操作xml

简介:   dom4j是一个Java的XML API,类似于jdom,用来读写XML文件。是一个非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源工具。可以在这个地址http://dom4j.sourceforge.net进行下载。

  dom4j是一个Java的XML API,类似于jdom,用来读写XML文件。是一个非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源工具。可以在这个地址http://dom4j.sourceforge.net进行下载。

  这里我们使用到的dom4j是dom4j-1.6.1这个版本,我们只需要使用到如下两个jar包:

  dom4j-1.6.1.jar

  commons-io-2.4.jar

1、dom4j读取xml字符串

 1 import org.dom4j.Document;
 2 import org.dom4j.DocumentException;
 3 import org.dom4j.DocumentHelper;
 4 import org.dom4j.Element;
 5 
 6 public class TestReadXMLString {
 7     public static void main(String[] args) throws DocumentException {
 8         String readline = "<?xml version=\"1.0\" encoding=\"utf-8\"?><students><student sid=\"001\"> <id>001</id><name>灰机</name> <age>18</age> </student></students>";
9 Document document = DocumentHelper.parseText(readline);// 加载字符串获得文档对象 10 Element rootElm = document.getRootElement();//获得文档根节点 11 System.out.println("rootElement: " + rootElm.getName());//打印根节点的名称 12 Element student = rootElm.element("student"); 13 Element id = student.element("id"); 14 Element name = student.element("name"); 15 Element age = student.element("age"); 16 System.out.println(id.getText()); 17 System.out.println(name.getText()); 18 System.out.println(age.getText()); 19 } 20 }

 

 2、dom4j创建xml文件

 1 import org.dom4j.Document;
 2 import org.dom4j.DocumentHelper;
 3 import org.dom4j.Element;
 4 import org.dom4j.io.OutputFormat;
 5 public class TestWriteXMLString {
 6     public static void main(String[] args) {
 7         OutputFormat format = OutputFormat.createPrettyPrint();
 8         // 1. 构造空的Document
 9         Document doc = DocumentHelper.createDocument();
10         doc.addComment("this is a comment");
11         // 2. 构造根元素
12         Element rootElmt = doc.addElement("users");
13         rootElmt.addNamespace("test", "www.test.com");
14 
15         Element userElmt = rootElmt.addElement("user");
16         userElmt.addAttribute("number", "1001");
17         userElmt.addElement("name").setText("zhangsan");
18         userElmt.addElement("age").setText("20");
19         userElmt.addElement("gender").setText("mail");
20 
21         Element userElmt2 = rootElmt.addElement("user");
22         userElmt.addAttribute("number", "1002");
23         userElmt2.addElement("name").setText("zhangsan");
24         userElmt2.addElement("age").setText("20");
25         userElmt2.addElement("gender").setText("mail");
26 
27         System.out.println(doc.asXML().replaceAll("\n", ""));
28     }
29 }

 

 3、读取或写xml文件

  读取xml文件

 1 SAXReader reader = new SAXReader();
 2       String path = "E:/Workspaces/MyEclipse 8.6/xmltest/file/student.xml";
 3       Document document = reader.read(new File(path));
 4 
 5   写xml文件
 6 
 7   OutputFormat format = OutputFormat.createPrettyPrint();
 8   format.setEncoding("utf-8");// 设置XML文件的编码格式
 9 
10   String filePath = "E:/Workspaces/MyEclipse 8.6/xmltest/file/student.xml";
11       Document document = DocumentHelper.createDocument();
12       doc.addComment("this is a comment");
13 
14   //创建document内容。。。
15   XMLWriter writer = new XMLWriter(new FileWriter(filePath), format);//写入指定的文件
16 
17   writer.write(document);
18 
19    writer.close();
目录
相关文章
|
1月前
|
XML C# 数据格式
使用C#操作XML文件
使用C#操作XML文件
11 0
|
4月前
|
XML Java 开发工具
jdom操作xml实战
jdom操作xml实战
|
6月前
|
安全 Java
J2EE&XML解析&dom4j的使用
J2EE&XML解析&dom4j的使用
|
7月前
|
XML 存储 JavaScript
Dom4j框架解析XML
Dom4j框架解析XML
66 0
|
1月前
|
XML 存储 JavaScript
深入学习 XML 解析器及 DOM 操作技术
所有主要的浏览器都内置了一个XML解析器,用于访问和操作XML XML 解析器 在访问XML文档之前,必须将其加载到XML DOM对象中 所有现代浏览器都有一个内置的XML解析器,可以将文本转换为XML DOM对象
72 0
|
3月前
|
XML Java 数据库连接
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
【1月更文挑战第2天】 MyBatis 是一款优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。
106 2
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
|
8月前
|
XML Java 数据库连接
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-原始jdbc操作1
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-原始jdbc操作1
41 0
|
4月前
|
XML 数据格式
dom4j解析xml实战
dom4j解析xml实战
|
4月前
|
XML Java 数据库连接
* 完成单表操作:需要3个功能。 * 功能1:使用注解 * 功能2:通用Mapper * 功能3:使用xml
* 完成单表操作:需要3个功能。 * 功能1:使用注解 * 功能2:通用Mapper * 功能3:使用xml
94 0
|
4月前
|
XML JavaScript API
框架选修课之dom4j解析xml字符串实例
框架选修课之dom4j解析xml字符串实例
50 1