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

相关文章

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依