Dom4j 添加 / 更新 / 删除 XML
1、获得文档
/**
*1、获得解析流
*2、解析XML
*/
2、添加
/**
*1、获取父元素
*2、创建元素
*3、创建属性并添加到元素中
*4、元素添加到根节点
*/
3、更新
/**
*1、获取结点
*2、转化为元素
*3、获取子元素
*4、更改
*/
4、删除
/**
*1、获得结点
*2、转换为元素
*3、获得父元素
*4、移除
*/
5、保存
/**
*1、创建输出对象
*2、添加内容对象
*3、关闭输出流
*/
获得文档
//获取文档
private static Document GetDocument() throws DocumentException {
//获得解析流
SAXReader reader=new SAXReader();
//解析xml
Document document=reader.read("books.xml");
return document; }
添加文档
//添加
private static void AddXml(Document document) {
//获取父元素
Element rootElement=document.getRootElement();
//创建元素
Element newElement =DocumentHelper.createElement("book");
//创建属性
Attribute attribute=DocumentHelper.createAttribute(newElement, "id", "b003");
//属性添加到元素中
newElement.add(attribute); //子元素
Element priceElement=DocumentHelper.createElement("price");
priceElement.setText("1234567890");
newElement.add(priceElement); //添加到根元素
rootElement.add(newElement);
}
修改文档
//修改
private static void UpdateXml(Document document) { //获取book结点
Node node= document.selectSingleNode("//book[@id='b001']");
//转换为元素
Element bookelement=(Element) node;
//获取price元素
Element priceElement= bookelement.element("price");
//更改文字
priceElement.setText("12345");
priceElement.setAttributeValue("unit", "$");
}
删除文档元素
//删除元素
private static void DeleteXml(Document document) {
//获得结点
Node node= document.selectSingleNode("//book[@id='b001']");
//转换为元素
Element element=(Element) node;
//获取父元素
Element parentElement=element.getParent();
//移除
parentElement.remove(node);
}
保存文档
//保存
private static void SavaXml(Document document) throws IOException {
//创建文件输出对象
FileWriter fileWriter=new FileWriter("books.dom4j.xml");
XMLWriter writer=new XMLWriter(fileWriter);
//添加内容对象
writer.write(document);
//关闭流
writer.close();
}
Dom4j 添加 / 更新 / 删除 XML的更多相关文章
- DOM 添加 / 更新 / 删除 XML (CURD)
获得Document /** * 获取文档 * 1.获得实例工厂 * 2.获得解析器 * 3.获得document */ 添加结点 /** * 1.获得 ...
- PHP中Cookie的使用---添加/更新/删除/获取Cookie 及 自动填写该用户的用户名和密码和判断是否第一次登陆
PHP中Cookie的使用---添加/更新/删除/获取Cookie 及 自动填写该用户的用户名和密码和判断是否第一次登陆 什么是cookie 服务器在客户端保存用户的信息,比如登录名,密码等 这些数 ...
- ado.net 批量添加 更新 删除
自曾列就别往下看 别折腾了 使用 SqlBulkCopy ,dataTable 必须跟sql里面的表字段完全一样 下面在sqlserver中演示 mysql 请google MySqlBulkLo ...
- Mysql添加更新删除数据-表
例如 此处拥有一个表名为 uuser 为表添加新数据 ,'); ,'); ,'); 假如只想添加uid和uname ,'小张'); 那么pas自动填充为NULL. 为表更新数据 这里把小王的pas改成 ...
- iOS回顾笔记(09) -- Cell的添加、删除、更新、批量操作
iOS回顾笔记(09) -- Cell的添加.删除.更新.批量操作 项目中经常有对UITableViewCell做各种操作的需求: 添加一个新的cell 删除某行cell 刷新cell上某行数据(如修 ...
- C# 添加,修改,删除Xml节点 摘录
C# 添加,修改,删除Xml节点 //添加xml节点 private void AddXml(string image, string title) { XmlDocume ...
- ArcGIS Engine效率探究——要素的添加和删除、属性的读取和更新
ArcGIS Engine效率探究——要素的添加和删除.属性的读取和更新 来自:http://blog.csdn.net/freewaywalker/article/details/23703863 ...
- Winform中对自定义xml配置文件进行Xml节点的添加与删除
场景 Winform中自定义xml配置文件后对节点进行读取与写入: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10053213 ...
- java使用dom4j和XPath解析XML与.net 操作XML小结
最近研究java的dom4j包,使用 dom4j包来操作了xml 文件 包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), ...
随机推荐
- 转载:Linux的vim三种模式
一般模式:在Linux终端中输入“vim 文件名”就进入了一般模式,但不能输入文字. 编辑模式:在一般模式下按i就会进入编辑模式,此时就可以写程式,按Esc可回到一般模式. 命令模式:在一般模式下按: ...
- mysql时间int日期转换
select from_unixtime(1350437720);select unix_timestamp(now());插入用 unix_timestamp(date)查询用from_unixti ...
- python os.walk()遍历
os.walk()遍历 import os p='/bin' #设定一个路径 for i in os.walk(p): #返回一个元组 print (i) # i[0]是路径 i[1]是文件夹 i[2 ...
- EF 多线程插入 Insert into DbContext Multithreading
当通过task 插入多条数据时报错. DBcontext 不是线程安全的, 如果是WebAPI 为每个请求创建DbContext 部分解释: http://stackoverflow.com/ques ...
- arm linux上的第一个应用程序 BOA移植
1. 首先, linux在开发板上能跑起来了. 包括网络驱动也有了, ifconfig之后, 能看到在rcS里面设置的IP, 也能ping通windows主机了, 当然, 也要window关掉防火墙才 ...
- 移动端app测试
对于手机项目(应用软件),主要是进行系统测试. 而针对手机应用软件的系统测试,我们通常从如下几个角度开展测试工作: 功能模块测试: 交叉事件测试: 性能测试: 安全测试: 容量测试: 兼容性测试: 接 ...
- 转:A10/A20 Bootloader加载过程分析
来自:http://blog.csdn.net/allen6268198/article/details/12905425 A10/A20 Bootloader加载过程分析 注:由于全志A10和A20 ...
- Powershell调用静态方法
Powershell将信息存储在对象中,每个对象都会有一个具体的类型,简单的文本会以System.String类型存储,日期会以System.DateTime类型存储.任何.NET对象都可以通过Get ...
- PullToRefreshListView组件的OnItemClickListener中的position下标问题
/** * Pass-through method for {[url=home.php?mod=space&uid=91636]@link[/url] PullToRefreshBase#g ...
- FFT修正
#include<iostream> #include<cstdio> #include<cmath> #include<algorithm> #inc ...