删除指定的XML节点

 
  呵呵,今天总算有点成绩了。明白了如何添加XML节点,现在又搞懂了如何删除XML节点。下面说一下具体的方法:

  下面是XML文档:

  <?xml version="1.0" encoding="gb2312"?>
  <data>
      <list>
      <url>cns!1pg3-qZraLhileWMaX48lbhg!246.entry</url>
      <title>试用 FCKeditor 2.0 RC3</title>
      <rq>6.13</rq>
      </list>
      <list>
      <url>cns!1pg3-qZraLhileWMaX48lbhg!287.entry</url>
      <title>比尔盖茨给马化腾的一封信</title>
      <rq>6.6</rq>
      </list>
      <list>
      <url>cns!1pg3-qZraLhileWMaX48lbhg!282.entry</url>
      <title>溜之大吉 v1.0</title>
      <rq>6.2</rq>
      </list>
      <list>
      <url>cns!1pg3-qZraLhileWMaX48lbhg!281.entry</url>
      <title>一个女孩儿的自恋</title>
      <rq>6.1</rq>
      </list>
  </data>

  要想删除指定的XML节点,必须要有指定的删除条件。在这儿,我选择二项:title、rq。

  下面是实现过程(C#代码):

  <% @ Page Language="c#" %>
  <% @ Import Namespace="System.Xml" %>
  <Script Language="C#" Runat="Server">
  void Page_Load(){
      string theTitle="试用 FCKeditor 2.0 RC3";
      string theRq="6.13";
      // 创建一个XmlDocument对象
      string xmlPath=Server.MapPath("blog.xml");
      XmlDocument xmlDoc=new XmlDocument();
      // 加载指定的XML数据
      xmlDoc.Load(xmlPath);
      // 选择匹配 XPath 表达式的第一个 XmlNode
      XmlNode root=xmlDoc.SelectSingleNode("data");
      // 获取节点的所有子节点
      XmlNodeList xnList=root.ChildNodes;
        bool isFinded=false;
      foreach(XmlNode xn in xnList){
          if(xn.SelectSingleNode("title").InnerText==theTitle && xn.SelectSingleNode("rq").InnerText==theRq){
              isFinded=true;
              root.RemoveChild(xn);// 移除指定的子节点
              xmlDoc.Save(xmlPath);
              break;
          }
      }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值