js添加、修改、删除xml节点例子
version="1.0" encoding="gb2312"?>
. <bookstore>
. <book genre="fantasy" isbn="2-3631-4">
. <title>Oberons Legacy</title>
. <author>Corets, Eva</author>
. <price>5.95</price>
. </book genre="fantasy" isbn="2-3631-4">
. </bookstore>
.
. 、往<bookstore>节点中插入一个<book>节点:
. XmlDocument xmlDoc=new XmlDocument();
. xmlDoc.Load("bookstore.xml");
. XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
. XmlElement xe1=xmlDoc.CreateElement("book");//创建一个<book>节点
. xe1.SetAttribute("genre","李赞红");//设置该节点genre属性
. xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性
.
. XmlElement xesub1=xmlDoc.CreateElement("title");
. xesub1.InnerText="CS从入门到精通";//设置文本节点
. xe1.AppendChild(xesub1);//添加到<book>节点中
. XmlElement xesub2=xmlDoc.CreateElement("author");
. xesub2.InnerText="候捷";
. xe1.AppendChild(xesub2);
. XmlElement xesub3=xmlDoc.CreateElement("price");
. xesub3.InnerText="58.3";
. xe1.AppendChild(xesub3);
.
. root.AppendChild(xe1);//添加到<bookstore>节点中
. xmlDoc.Save("bookstore.xml");
. //===============================================
. 结果为:
. <!--?xml version="1.0" encoding="gb2312"?-->
. <bookstore>
. <book genre="fantasy" isbn="2-3631-4">
. <title>Oberons Legacy</title>
. <author>Corets, Eva</author>
. <price>5.95</price>
. </book genre="fantasy" isbn="2-3631-4">
. <book genre="李赞红" isbn="2-3631-4">
. <title>CS从入门到精通</title>
. <author>候捷</author>
. <price>58.3</price>
. </book genre="李赞红" isbn="2-3631-4">
. </bookstore>
.
. 、修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点<author>的文本修改为“亚胜”。
. XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点
. foreach(XmlNode xn in nodeList)//遍历所有子节点
. {
. XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
. if(xe.GetAttribute("genre")=="李赞红")//如果genre属性值为“李赞红”
. {
. xe.SetAttribute("genre","update李赞红");//则修改该属性为“update李赞红”
.
. XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
. foreach(XmlNode xn1 in nls)//遍历
. {
. XmlElement xe2=(XmlElement)xn1;//转换类型
. if(xe2.Name=="author")//如果找到
. {
. xe2.InnerText="亚胜";//则修改
. break;//找到退出来就可以了
. }
. }
. break;
. }
. }
.
. xmlDoc.Save("bookstore.xml");//保存。
. //==================================================
. 最后结果为:
. <!--?xml version="1.0" encoding="gb2312"?-->
. <bookstore>
. <book genre="fantasy" isbn="2-3631-4">
. <title>Oberons Legacy</title>
. <author>Corets, Eva</author>
. <price>5.95</price>
. </book genre="fantasy" isbn="2-3631-4">
. <book genre="update李赞红" isbn="2-3631-4">
. <title>CS从入门到精通</title>
. <author>亚胜</author>
. <price>58.3</price>
. </book genre="update李赞红" isbn="2-3631-4">
. </bookstore>
.
. 、删除 <book genre="fantasy" isbn="2-3631-4">节点的genre属性,删除 <book genre="update李赞红" isbn="2-3631-4">节点。
. XmlNodeList xnl=xmlDoc.SelectSingleNode("bookstore").ChildNodes;
.
. foreach(XmlNode xn in xnl)
. {
. XmlElement xe=(XmlElement)xn;
. if(xe.GetAttribute("genre")=="fantasy")
. {
. xe.RemoveAttribute("genre");//删除genre属性
. }
. else if(xe.GetAttribute("genre")=="update李赞红")
. {
. xe.RemoveAll();//删除该节点的全部内容
. }
. }
. xmlDoc.Save("bookstore.xml");
. //===========================================
. 最后结果为:
. <!--?xml version="1.0" encoding="gb2312"?-->
. <bookstore>
. <book isbn="2-3631-4">
. <title>Oberons Legacy</title>
. <author>Corets, Eva</author>
. <price>5.95</price>
. </book isbn="2-3631-4">
. <book>
. </book>
. </bookstore>
.
. 、显示所有数据。
. XmlNode xn=xmlDoc.SelectSingleNode("bookstore");
.
. XmlNodeList xnl=xn.ChildNodes;
.
. foreach(XmlNode xnf in xnl)
. {
. XmlElement xe=(XmlElement)xnf;
. Console.WriteLine(xe.GetAttribute("genre"));//显示属性值
. Console.WriteLine(xe.GetAttribute("ISBN"));
.
. XmlNodeList xnf1=xe.ChildNodes;
. foreach(XmlNode xn2 in xnf1)
. {
. Console.WriteLine(xn2.InnerText);//显示子节点点文本
. }
. } </book genre="update李赞红" isbn="2-3631-4"></book genre="fantasy" isbn="2-3631-4"></author></bookstore></book></book></bookstore></book></bookstore>
js添加、修改、删除xml节点例子的更多相关文章
- C# 添加,修改,删除Xml节点 摘录
C# 添加,修改,删除Xml节点 //添加xml节点 private void AddXml(string image, string title) { XmlDocume ...
- 打通前后端全栈开发node+vue进阶【课程学习系统项目实战详细讲解】(3):用户添加/修改/删除 vue表格组件 vue分页组件
第三章 建议学习时间8小时 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章] 演示地址:后台:demo ...
- JavaWeb_day03_员工信息添加修改删除
day03员工的添加,修改,删除 修改功能 思路 : 点击修改员工数据之后,跳转到单行文本,查询要修改的员工id的全部信息,主键id设置为readonly,其余的都可以修改, 修改之后,提交按钮,提交 ...
- 原生js添加和删除类
原生js添加和删除类: this.className +=" "; this.className = this.className.replace(" 原来的类" ...
- Web 1三级联动 下拉框 2添加修改删除 弹框
Web 三级联动 下拉框 using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...
- SpringBoot定时任务升级篇(动态添加修改删除定时任务)
需求缘起:在发布了<Spring Boot定时任务升级篇>之后得到不少反馈,其中有一个反馈就是如何动态添加修改删除定时任务?那么我们一起看看具体怎么实现,先看下本节大纲: (1)思路说明: ...
- 【转】C#添加修改删除文件文件夹大全
[转]C#添加修改删除文件文件夹大全 C#添加修改删除文件文件夹大全 StreamWriter sw = File.AppendText(Server.MapPath(".")+& ...
- 添加、修改、删除XML节点代码例子
version="1.0" encoding="gb2312"?> . <bookstore> . <book genre=" ...
- C# 添加,修改,删除Xml节点
//添加xml节点 private void AddXml(string image, string title) { XmlDocument xmlDoc = new X ...
随机推荐
- PC站与H5移动站最佳适配方案
HTML5是目前HTML的最屌版本,同时也是建设移动站的最佳技术.百度适时推出PC站与H5移动站的最佳适配方案,对站长而言实在是久旱逢甘霖.详情如下: PC站与H5移动站最佳适配方案 pc端: 在pc ...
- [USACO08DEC]拍头Patting Heads 数学 BZOJ 1607
题目描述 It's Bessie's birthday and time for party games! Bessie has instructed the N (1 <= N <= 1 ...
- jquery遇到的坑
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JavaWeb学习笔记(十二)—— JDBC的基本使用
一.JDBC概述 1.1 数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡,同样道 ...
- class __init__()
python 先定义函数才能调用 类是客观对象在人脑中的主观映射,生产对象的模板,类相当于盖房的图纸,生产工具的模具 模板 类:属性.方法 __init__() 这个方法一般用于初始化一个类但是 当实 ...
- 开发环境,eclipse编辑器java代码自动提示
Eclipse+ADT+Android SDK 搭建安卓开发环境 eclipse编辑器java代码自动提示 window-->Preferences-->JAva-->Content ...
- docker大概理解
#是啥# 轻量级的虚拟机,占用资源远小于一般意义上的虚拟机(例如:vmware,hyper-v) #特点# 启动快,体积小,开销少 #本质# Linux容器的一种封装 参考: 阮一峰博客 http:/ ...
- [转] 如何在ie11里使用a连接创建动态下载文件流
[From] https://segmentfault.com/q/1010000009470664 查了资料,可以使用微软独家的msSaveBlob, 这个方法支持ie10及以上. var down ...
- 安装软件或运行软件时提示缺少api-ms-win-crt-runtime库解决方法
最近碰到一个问题,在我软件安装或运行时会提示缺少api-ms-win-crt-runtime-|1-1-0.dll 当然第一个想到的是运行库没有装,但是很清楚的是我的电脑是装过vc_redist_20 ...
- Java中使用nextLine(); 没有输入就自动跳过的问题
转自:https://www.cnblogs.com/1020182600HENG/p/6564795.html [问题分析] 必要的知识:in.nextLine();不能放在in.nextInt() ...