dom4j相关操作,生成指定的xml文档-修改id为2的学生姓名-删除id为2的学生

2024-04-16 13:38

本文主要是介绍dom4j相关操作,生成指定的xml文档-修改id为2的学生姓名-删除id为2的学生,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.使用dom4j的api来生成以下的xml文件
<Students>
<Student id="1">
<name>张三</name>
<gender>男</gender>
<grade>计算机1班</grade>
<address>广州天河</address>
</Student>
<Student id="2">
<name>李四</name>
<gender>女</gender>
<grade>计算机2班</grade>
<address>广州越秀</address>
</Student>
</Students>


2.修改id为2的学生的姓名,改为“王丽”


3.删除id为2的学生


public class Demo4 {/*** 1.生成指定xml文档* @throws Exception*/@Testpublic void test1() throws Exception{//1.内存创建xml文档Document doc = DocumentHelper.createDocument();//2.写入内容Element rootElem = doc.addElement("Students");//2.1 增加标签Element studentElem1 = rootElem.addElement("Student");//2.2 增加属性studentElem1.addAttribute("id", "1");//2.3 增加标签,同时设置文本studentElem1.addElement("name").setText("张三");studentElem1.addElement("gender").setText("男");studentElem1.addElement("grade").setText("计算机1班");studentElem1.addElement("address").setText("广州天河");//2.1 增加标签Element studentElem2 = rootElem.addElement("Student");//2.2 增加属性studentElem2.addAttribute("id", "2");//2.3 增加标签,同时设置文本studentElem2.addElement("name").setText("李四");studentElem2.addElement("gender").setText("女");studentElem2.addElement("grade").setText("计算机2班");studentElem2.addElement("address").setText("广州越秀");//3.内容写出到xml文件//3.1 输出位置FileOutputStream out = new FileOutputStream("c://bea//xml/student.xml");//3.2 指定格式OutputFormat format = OutputFormat.createPrettyPrint();// 设置编码format.setEncoding("utf-8");XMLWriter writer = new XMLWriter(out,format);//3.3 写出内容writer.write(doc);//3.4关闭资源writer.close();}/*** 2.修改id为2的学生姓名* @throws Exception*/@Testpublic void test2() throws Exception{//1.查询到id为2的学生Document doc = new SAXReader().read(new File("c://bea//xml/student.xml"));//1.1 找到所有的Student标签Iterator<Element> it = doc.getRootElement().elementIterator("Student");while(it.hasNext()){Element stuElem = it.next();//1.2 查询id为id的学生标签if(stuElem.attributeValue("id").equals("2")){stuElem.element("name").setText("玛丽");break;}}//3.1 输出位置FileOutputStream out = new FileOutputStream("c://bea//xml/student.xml");//3.2 指定格式OutputFormat format = OutputFormat.createPrettyPrint();// 设置编码format.setEncoding("utf-8");XMLWriter writer = new XMLWriter(out,format);//3.3 写出内容writer.write(doc);//3.4关闭资源writer.close();}/*** 3.删除id为2的学生* @throws Exception*/@Testpublic void test3() throws Exception{//1.查询到id为2的学生Document doc = new SAXReader().read(new File("c://bea//xml//student.xml"));//1.1 找到所有的Student标签Iterator<Element> it = doc.getRootElement().elementIterator("Student");while(it.hasNext()){Element stuElem = it.next();//1.2 查询id为id的学生标签if(stuElem.attributeValue("id").equals("2")){//1.3 删除该学生标签stuElem.detach();break;}}//3.1 输出位置FileOutputStream out = new FileOutputStream("c://bea//xml//student.xml");//3.2 指定格式OutputFormat format = OutputFormat.createPrettyPrint();// 设置编码format.setEncoding("utf-8");XMLWriter writer = new XMLWriter(out,format);//3.3 写出内容writer.write(doc);//3.4关闭资源writer.close();}
}


这篇关于dom4j相关操作,生成指定的xml文档-修改id为2的学生姓名-删除id为2的学生的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/908942

相关文章

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.