zoukankan      html  css  js  c++  java
  • 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;  
       }  
    

      

  • 相关阅读:
    Django of python 中文文档 及debug tool
    爬虫、网页测试 及 java servlet 测试框架等介绍
    python的分布式爬虫框架
    github 上 python 的优秀库推荐列表
    github 上 机器学习 的库推荐列表
    爬虫,如何防止被ban之策略大集合
    make menuconfig 时出现 mixed implicit and normal rules: deprecated syntax
    adb通过TCP/IP连接提示 unable to connect to *, Connection refused的解决方法
    Android中使用MediaCodec硬件解码,高效率得到YUV格式帧,快速保存JPEG图片(不使用OpenGL)(附Demo)
    ThinkCMF X2.2.2多处SQL注入漏洞分析
  • 原文地址:https://www.cnblogs.com/sunbin123/p/6590314.html
Copyright © 2011-2022 走看看