XML简单的增改删操作
XML文件的简单增改删,每一个都可以单独拿出来使用。
新创建XML文件,<?xmlversion="1.0"encoding="utf-8"?>
<bookstore>
<bookgenre="fantasy"ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
实现如下:
//插入节点
protected
void btn_Add_Click(object sender,
EventArgs e)
{
XmlDocument doc =
new XmlDocument();
doc.Load(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");
XmlNode root = doc.SelectSingleNode("bookstore");//找到根节点
XmlElement new_ele = doc.CreateElement("book");//文档创建节点<book>
new_ele.SetAttribute("genre",
"历史");
new_ele.SetAttribute("ISBN",
"100-001-*6963");//设置属性
XmlElement new_ele_childone = doc.CreateElement("title");
new_ele_childone.InnerText =
"史记"; //填充新节点内的文本。
new_ele.AppendChild(new_ele_childone);//给父节点添加子节点。
XmlElement new_ele_childtwo = doc.CreateElement("author");
new_ele_childtwo.InnerText =
"司马迁";
new_ele.AppendChild(new_ele_childtwo);
XmlElement new_ele_childthree = doc.CreateElement("price");
new_ele_childthree.InnerText =
"90.36";
new_ele.AppendChild(new_ele_childthree);
root.AppendChild(new_ele);//根节点添加新创建的子节点!
doc.Save(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");//记得一定要保存!
}
//更新属性和节点值
protected
void btn_Edit_Click(object sender,
EventArgs e)
{
XmlDocument doc =
new XmlDocument();
doc.Load(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");
XmlNodeList nodes = doc.SelectSingleNode("bookstore").ChildNodes;
//找到根节点下的所有子节点。
foreach (XmlElement item
in nodes)
{
if (item.GetAttribute("genre") ==
"历史")//找属性
{
item.SetAttribute("genre",
"中国古代史");
}
XmlNodeList childsnodes = item.ChildNodes;
foreach (XmlElement childitem
in childsnodes)
{
if (childitem.Name ==
"price") //找节点
{
childitem.InnerText =
"199";
break;
}
}
}
doc.Save(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");
}
//删除节点的genre属性,删除price是99的节点
protected
void btn_Del_Click(object sender,
EventArgs e)
{
XmlDocument doc =
new XmlDocument();
doc.Load(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");
XmlNode root = doc.SelectSingleNode("bookstore");
foreach (XmlElement item
in root.ChildNodes)
{
if (item.HasAttribute("genre"))
{
item.RemoveAttribute("genre");
}
foreach (XmlElement child_item
in item)
{
if (child_item.Name ==
"price" && child_item.InnerText ==
"99")
{
root.RemoveChild(item);
}
}
}
doc.Save(@"E:\ruxiaomeng\Simple\C++\CLR\stlclr\StlClr Sample\XMLTest\bookstore.xml");
}
XML简单的增改删操作的更多相关文章
- js 属性增改删操作
js 属性增改删操作,可参看菜鸟教程,这里记录一个小问题:disabled属性 使用setAttribute操作无法 禁用disabled属性,需使用removeAttribute操作,原因是只要有d ...
- linq to xml 简单的增、删、改、查、保存xml文件操作
using System; using System.Collections; using System.Configuration; using System.Data; using System. ...
- 菜鸟学习Hibernate——简单的增、删、改、查操作
上篇博客利用Hibernate搭建起一个简单的例子,把数据库的映射显示了出来在上一篇的博客基础上这篇博客讲述如何利用Hinbernate框架实现简单的数据库操作. 1.加入junit.jar 2.新建 ...
- jdbc连接sql server2017进行简单的增、删、改、查操作
这几天刚做完数据库的课程设计,来稍微总结一下如何通过jdbc访问sql server数据库进行简单的增删改查操作.在连接之前,需要简单地配置一下,包括下载对应jdk版本的驱动,设置环境变量等等.相关配 ...
- C#+Access 员工信息管理--简单的增删改查操作和.ini配置文件的读写操作。
1.本程序的使用的语言是C#,数据库是Access2003.主要是对员工信息进行简单的增删改查操作和对.ini配置文件的读写操作. 2.代码运行效果如下: 功能比较简单.其中在得到查询结果后,在查询结 ...
- python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作
1.通过 pip 安装 pymysql 进入 cmd 输入 pip install pymysql 回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...
- DataFrame查增改删
DataFrame查增改删 查 Read 类list/ndarray数据访问方式 dates = pd.date_range(',periods=10) dates df = pd.DataFrame ...
- C#程序:如何创建xml文件以及xml文件的增、删、改、查
其实今天的这篇博文 ,是对请几天发表的博文的一个总结,只是想把xml文件的增删改查结合起来,这样更容易让初学的朋友理解,废话也不多说了,开始吧! 下面是我把我在vs环境下写的代码ctrl+V然后ctr ...
- 【OF框架】新建库表及对应实体,并实现简单的增删改查操作,封装操作标准WebApi
准备 搭建好项目框架及数据库,了解框架规范. 1.数据库表和实体一一对应,表名实体名名字相同,用小写,下划线连接.字段名用驼峰命名法,首字母大写. 2.实体放在Entities目录下,继承Entity ...
随机推荐
- Entity Framework技巧系列之十 - Tip 37 - 41
提示37. 怎样进行按条件包含(Conditional Include) 问题 几天前有人在StackOverflow上询问怎样进行按条件包含. 他们打算查询一些实体(比方说Movies),并且希望预 ...
- 个人linux简单笔记,随时更新
vim显示行数 :set nu 查找文件 find /home -name config.txt 重命名文件或者文件夹 mv a b centos中phpize的安装 yum install php- ...
- php根据时间显示刚刚,几分钟前,今天,昨天的实现代码
如果大家有更好的方案欢迎交流 function diffBetweenTwoDay($pastDay){ $timeC = time() - strtotime($pastDay); $dateC = ...
- QML中MouseArea元素的介绍
原文:http://www.thisisqt.com/?action-viewnews-itemid-22 MouseArea元素的一个很典型的用法是和一个可视的item一起用,处理这个item的鼠标 ...
- ListView控件的Insert、Edit和Delete功能(第二部分)
本系列文章将通过一个简单的实例,结合我自己使用ListView的情况,展示如何用ASP.NET 3.5 ListView控件进行基本的Insert.Edit和Delete操作. 系统要求: Windo ...
- 源码篇:SDWebImage
攀登,一步一个脚印,方能知其乐 源码篇:SDWebImage 源码来源:https://github.com/rs/SDWebImage 版本: 3.7 SDWebImage是一个开源的第三方库,它提 ...
- 【dp】 比较经典的dp poj 1160
转自http://blog.sina.com.cn/s/blog_5dd8fece0100rq7d.html [题目大意]:用数轴描述一条高速公路,有V个村庄,每一个村庄坐落在数轴的某个点上,需要选择 ...
- c++中string的用法
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够.字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至 ...
- display:table表格合并单元格
直接上代码: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEn ...
- 内核添加对yaffs2文件系统的支持
移植方法: 第一步,我们需要YAFFS2的源码,如果大家有兴趣想了解YAFFS2文件系统的驱动原理的话可以直接去访问他们的官网,地址是www.yaffs2.net,上面说的很详细的,也有源码下载地址, ...