当前位置:  编程技术>.net/c#/asp.net

c#对xml增删改查操作示例

    来源: 互联网  发布时间:2014-10-26

    本文导语:  已知有一个XML文件(bookstore.xml)如下: 代码如下:Oberon's LegacyCorets, Eva5.95 1、往节点中插入一个节点: 代码如下:XmlDocument xmlDoc=new XmlDocument();xmlDoc.Load("bookstore.xml");XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找XmlElement xe1=xmlDoc.Crea...

已知有一个XML文件(bookstore.xml)如下:

代码如下:




Oberon's Legacy
Corets, Eva
5.95


1、往节点中插入一个节点:

代码如下:

XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找
XmlElement xe1=xmlDoc.CreateElement("book");//创建一个节点
xe1.SetAttribute("genre","李赞红");//设置该节点genre属性
xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性

XmlElement xesub1=xmlDoc.CreateElement("title");
xesub1.InnerText="CS从入门到精通";//设置文本节点
xe1.AppendChild(xesub1);//添加到节点中
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);//添加到节点中
xmlDoc.Save("bookstore.xml");

结果为:

代码如下:




Oberon's Legacy
Corets, Eva
5.95


CS从入门到精通
候捷
58.3


2、修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点的文本修改为“亚胜”。

代码如下:

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");//保存。

最后结果为:

代码如下:




Oberon's Legacy
Corets, Eva
5.95


CS从入门到精通
亚胜
58.3



3、删除 节点的genre属性,删除 节点。

代码如下:

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");

最后结果为:

代码如下:




Oberon's Legacy
Corets, Eva
5.95




4、显示所有数据

代码如下:

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);//显示子节点点文本
}
}


    
 
 

您可能感兴趣的文章:

  • 操作xml,将xml数据显示到treeview的C#代码
  • C#读写xml文件的简单例子
  • 深入C#中使用SqlDbType.Xml类型参数的使用详解
  • c# xml API操作的小例子
  • 操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP)
  • c#使用linq技术创建xml文件的小例子
  • C#读写xml配置文件(LINQ操作实例)
  • c# 读取XML文件的简单代码
  • C# 写入XML文档的三种方法与代码实例
  • c#中xml文档注释编译dll引用到其它项目示例
  • C# Linq读取XML文件的实例
  • C# WinForm开发中使用XML配置文件实例
  • c# DataSet转为XML时格式化字段数据的方法
  • C# DataSet的内容写成XML时如何格式化字段数据
  • c# 读取xml 冒号问题的解决方法
  • c#读取xml文件到datagridview实例
  • C# XML与Json之间相互转换实例详解
  • C#序列化成XML注意细节
  • C# 写入XML文档三种方法详细介绍
  • C#通过XML节点属性/属性值读取写入XML操作代码实例
  • 用xml增删改查xml文件格式
  • asp.net操作xml增删改示例分享
  • c#操作xml帮助类分享(xml增删改查)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • python下xml解析库lxml最新版下载安装以及代码示例
  • 使用linq to xml修改app.config示例(linq读取xml)
  • jquery解析xml字符串简单示例
  • java解析xml之jdom解析xml示例分享
  • 利用ascii码传输xml转义字符示例
  • java解析xml之dom4j解析xml示例分享
  • java解析xml之dom解析xml示例分享
  • 使用xmltextreader对象读取xml文档示例
  • java解析xml之sax解析xml示例分享
  • python将xml xsl文件生成html文件存储示例讲解
  • 在java中使用dom解析xml的示例分析
  • c#中xml文档注释编译dll引用到其它项目示例 iis7站长之家
  • jquery解析xml字符串示例分享
  • jsp读取大对象CLOB并生成xml文件示例
  • asp.net xml文件的读写、添加、修改、删除操作示例
  • java使用xpath解析xml示例分享
  • c#批量整理xml格式示例
  • java使用dom4j操作xml示例代码
  • Android解析服务器端发来的xml数据示例
  • 通过dom4j解析xml字符串(示例代码)
  • python操作xml文件示例
  • java命名空间javax.xml类xmlconstants的类成员方法: xml_ns_prefix定义及介绍
  • 请问各位:我用SUN公司的JAXP开发包解析XML文档,可不知道对XML解析后如何将结果写回文件中。请各位熟悉Java和XML的高手帮忙。
  • java命名空间javax.xml类xmlconstants的类成员方法: xml_ns_uri定义及介绍
  • 如何新建立一个XML文件并且把别的XML文件引入到这个XML文件中(再线等待)
  • java命名空间javax.xml.transform类outputkeys成员方法: omit_xml_declaration定义参考
  • 看了半本,是关于java与xml编程的书,它用xml来代替数据库,试问,xml真的能开题数据库吗?(在性能方面)
  • java命名空间javax.xml类xmlconstants的类成员方法: xml_dtd_ns_uri定义及介绍
  • XML 能够 include吗?如何拆分很长的XML
  • java命名空间javax.xml类xmlconstants的类成员方法: w3c_xml_schema_ns_uri定义及介绍
  • Java 和XML 编程时,XML的DTD 放到哪?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3