C#中XML解析的增加修改和删除
01添加xml节点
private void AddXml(string image, string title)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("../flash/dati.xml"));
XmlNode root = xmlDoc.SelectSingleNode("images");//查找<images>
XmlElement xe1 = xmlDoc.CreateElement("thumb");//创建一个<thumb>节点
xe1.SetAttribute("displayNum", "6");//设置该节点displayNum属性
xe1.SetAttribute("separation", "5");//设置该节点separation属性
XmlElement xesub1 = xmlDoc.CreateElement("image");
xesub1.InnerText = image;//设置文本节点
xe1.AppendChild(xesub1);//添加到thumb节点中
XmlElement xesub2 = xmlDoc.CreateElement("description");
xesub2.InnerText = title;
xe1.AppendChild(xesub2);
root.AppendChild(xe1);//添加到<images>节点中
xmlDoc.Save(Server.MapPath("../flash/dati.xml"));
}
02删除节点
private void DelXml(string image)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("../flash/dati.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("images").ChildNodes; //查找节点
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.InnerText.IndexOf(image,0) >= 0)
{
xn.ParentNode.RemoveChild(xn);
// xn.RemoveAll();
}
}
xmlDoc.Save(Server.MapPath("../flash/dati.xml"));
}
03修改节点
foreach(XmlNode xn in nodeList)//遍历所有子节点
{
XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("genre")=="")// 判读条件
{
xe.SetAttribute("genre",newStr);//则修改该属性为newstr
XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历
{
XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="author")//如果找到 //判读条件
{
xe2.InnerText=newText;//则修改
break;//找到退出来就可以了
}
}
break;
}
C#中XML解析的增加修改和删除的更多相关文章
- 2016 - 1- 23 iOS中xml解析 (!!!!!!!有坑要解决!!!!!!)
一: iOS中xml解析的几种方式简介 1.官方原生 NSXMLParser :SAX方式解析,使用起来比较简单 2.第三方框架 libxml2 :纯C 同时支持DOM与SAX GDataXML: D ...
- Android中XML解析-Dom解析
Android中需要解析服务器端传过来的数据,由于XML是与平台无关的特性,被广泛运用于数据通信中,有的时候需要解析xml数据,格式有三种方式,分别是DOM.SAX以及PULL三种方式,本文就简单以D ...
- Android中XML解析-SAX解析
昨天由于时间比较匆忙只写了Android中的XML解析的Dom方式,这种方式比较方便,很容易理解,最大的不足就是内容多的时候,会消耗内存.SAX(Simple API for XML)是一个解析速度快 ...
- Android中XML解析-PULL解析
前面写了两篇XML解析的Dom和SAX方式,Dom比较符合思维方式,SAX事件驱动注重效率,除了这两种方式以外也可以使用Android内置的Pull解析器解析XML文件. Pull解析器的运行方式与 ...
- Android中XML解析,保存的三种方法
简单介绍 在Android开发中,关于XML解析有三种方式,各自是: SAX 基于事件的解析器.解析速度快.占用内存少.非常适合在Android移动设备中使用. DOM 在内存中以树形结构存放,因此检 ...
- Dom4J对XML的创建、修改、删除等操作
Dom4j也可以很方便完成XML文档的创建.元素的修改.文档的查询遍历等,但dom4j稍比jdom复杂一点,不过在大片文档的情况下dom4j的性能要不jdom好. # 准备 首先,提供相关的jar包 ...
- xml解析----java中4中xml解析方法(转载)
转载:https://www.cnblogs.com/longqingyang/p/5577937.html 描述 XML是一种通用的数据交换格式,它的平台无关性.语言无关性.系统无关性.给数据集成与 ...
- Android中XML解析
package com.example.thebroadproject; public class Book { private int id; private String name; privat ...
- cocos2d-x 中XML解析与数据存储
一不小心就玩了一周的游戏了.哎.玩的时候时间过得总是这么快... 于是今天决定看一下之前不怎么非常熟悉的XML;(之前做游戏时数据的储存用到过XML,但这块是还有一个同事在做,所以不怎么熟悉), 看了 ...
随机推荐
- 唤醒你的大脑 --- javascript冒泡排序
var a; a = [1, 2, 3, 11, 55, 5, 0, 44]; (function bubbleSort() { for (var i = 0; i <= a.length - ...
- Engine中如何截取线上指定两点间的线段?
//调用 IPolyline newLine = GetSubCurve(polyline, p1, p2); ESRI.ArcGIS.Display.IScreenDisplay screenD ...
- 我是如何通过CSRF拿到Shell的
织梦内容管理系统(DedeCms) 以简单.实用.开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统,在经历多年的发展,目前的版本无论在功能,还是在易用性方面,都有 ...
- fast-cgi & php-fpm 等的理解
原文地址:https://segmentfault.com/q/1010000000256516 网上有的说,fastcgi是一个协议,php-fpm实现了这个协议: 有的说,php-fpm是fast ...
- 拦截器及 Spring MVC 整合
一.实验介绍 1.1 实验内容 本节课程主要利用 Spring MVC 框架实现拦截器以及 Spring MVC 框架的整合. 1.2 实验知识点 Spring MVC 框架 拦截器 1.3 实验环境 ...
- mysql 加密解密函数
http://blog.csdn.net/wh62592855/article/details/6777753 mysql下的加密函数有如下几个 PASSWORD():创建一个经过加密的密码字符串,适 ...
- rf-demos (request)
*** Settings *** Library RequestsLibrary Library Collections Library XML *** Test Cases *** case1 Cr ...
- Selenium + Nightwatch 自动化测试环境搭建
首先要安装 Java 7 或更高 ,(http://www.oracle.com/technetwork/java/javase/downloads/index.html) 并且 java 命令可正常 ...
- Linux - D-Bus
http://en.wikipedia.org/wiki/D-Bus D-Bus is a free and open-source inter-process communication (IPC) ...
- 网页编程-Django(一)
业内: GET:获取数据 POST:提交数据 上传单个数据: request.POST.get(‘’name名‘’) 上传多选数据: request.POST.getlist('name名') 上传文 ...