java使用dom4j操作xml示例代码
发布时间:2022-03-21 18:28:38
dom4j是一个非常优秀的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字符串
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class TestReadXMLString {
public static void main(String[] args) throws DocumentException {
String readline = "<?xml version=\"1.0\" encoding=\"utf-8\"?><students><student sid=\"001\"> <id>001</id><name>灰机</name> <age>18</age> </student></students>";
Document document = DocumentHelper.parseText(readline);
Element rootElm = document.getRootElement();
System.out.println("rootElement: " + rootElm.getName());
Element student = rootElm.element("student");
Element id = student.element("id");
Element name = student.element("name");
Element age = student.element("age");
System.out.println(id.getText());
System.out.println(name.getText());
System.out.println(age.getText());
}
}
2、dom4j创建xml文件
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
public class TestWriteXMLString {
public static void main(String[] args) {
OutputFormat format = OutputFormat.createPrettyPrint();
// 1. 构造空的Document
Document doc = DocumentHelper.createDocument();
doc.addComment("this is a comment");
// 2. 构造根元素
Element rootElmt = doc.addElement("users");
rootElmt.addNamespace("test", "www.test.com");
Element userElmt = rootElmt.addElement("user");
userElmt.addAttribute("number", "1001");
userElmt.addElement("name").setText("zhangsan");
userElmt.addElement("age").setText("20");
userElmt.addElement("gender").setText("mail");
Element userElmt2 = rootElmt.addElement("user");
userElmt.addAttribute("number", "1002");
userElmt2.addElement("name").setText("zhangsan");
userElmt2.addElement("age").setText("20");
userElmt2.addElement("gender").setText("mail");
System.out.println(doc.asXML().replaceAll("\n", ""));
}
}
3、读取或写xml文件
读取xml文件
SAXReader reader = new SAXReader();
String path = "E:/Workspaces/MyEclipse 8.6/xmltest/file/student.xml";
Document document = reader.read(new File(path));
写xml文件
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");// 设置XML文件的编码格式
String filePath = "E:/Workspaces/MyEclipse 8.6/xmltest/file/student.xml";
Document document = DocumentHelper.createDocument();
doc.addComment("this is a comment");
/创建document内容
XMLWriter writer = new XMLWriter(new FileWriter(filePath), format);//写入指定的文件
writer.write(document);
writer.close();


猜你喜欢
- 如果不知道,类的静态变量存储在那? 方法的局部变量存储在那? 赶快收藏Java内存区域主要可以分为共享内存,堆、方法区和线程私有内存,虚拟机
- 0、线程的本质线程不是一个计算机硬件的功能,而是操作系统提供的一种逻辑功能,线程本质上是进程中一段并发运行的代码,所以线程需要操作系统投入C
- C#中的null与SQL中的NULL是不一样的,SQL中的NULL用C#表示出来就是DBNull.Value。注意:SQL参数是不能接受C#
- Java Tess4J实现图像识别最近需要用Java做一个图像识别的东西,查了一些资料,在此写一个基于Tess4J的教程,方便其他人参考和使
- 题外话: 泛型与通配符是Java语法中比较难懂的两个语法,学习泛型和通配符的主要目的是能够看懂源码,实际使用的不多。1.泛型1.1泛型的用法
- 前言需求是上传Excel文件并读取Excel文件中的内容,根据获取的数据执行完某些业务操作后再将一些数据写回到excel中。前台使用Form
- 原理解析:利用RandomAccessFile在本地创建一个随机访问文件,文件大小和服务器要下载的文件大小相同。 根据线程的数量(假设有三个
- java 中基本算法之希尔排序的实例详解希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的
- WPF中有一个DrawingContext类,该类提供了很多画法方法,例如DrawLine,DrawText,DrawRectangle等。
- 本文实例分析了Android开发之TimePicker控件用法。分享给大家供大家参考,具体如下:新建项目:New Android Proje
- IDEA打成jar包并在windows后台运行一、IDEA打成jar包1、File=>Project Structure=>Pr
- 使用IDEA配置Maven搭建开发框架ssm教程一、配置Maven环境1.下载Maven:下载链接2.下载完成解压压缩包并创建本地仓库文件夹
- 一、创建web项目1、打开idea软件,点击界面上的Create New Project2、进入如下界面。选中 java Enterpris
- 一、前言ConcurrentHashMap的源码采用了一种比较独特的方式对map中的元素数量进行统计,自然是要好好研究一下其原理思想,同时也
- java字符串如何进行比较?我们可以根据内容和引用来比较Java中的String。它用于身份验证(通过 equals() 方法)、排序(通过
- 为什么需要UI自动化测试?我有一个观点,对于重复的工作,那么程序都是可以代替的,我想这是作为一个程序员的一个基本素养(能偷懒的绝不干活)。U
- #define只加一个参数 的解释<stdio.h> 里有:#ifndef __STDIO_H #define &n
- 引言C#应用通过 Microsoft.Toolkit.Uwp.Notifications NuGet包可以很方便的发送本地通知(Window
- public static class DataTableHelper { &nb
- Spring depends-on的使用通过在XML中的<bean>里配置depends-on属性或者在一个类上使用注解@Dep