zoukankan      html  css  js  c++  java
  • 添加,修改,删除Xml节点

       //添加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"));
        }
     
     
       //删除节点内容
        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"));
        }
     
    //修改
    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;
        }
  • 相关阅读:
    ffmpeg 编译IOS静态库
    冲刺总结——第一篇
    openssl基础知识以及部分命令详解
    电子公文传输系统
    第五组课程设计—小组总结
    学习经验总结
    QtCreator:没CDB二进制档可用为二进制格式在'x86windowsmsvc2008pe32bit'"
    printf格式化输出
    DELL T110 安装windows server 2003
    visualSVN+花生壳实现外网访问局域网内SVN
  • 原文地址:https://www.cnblogs.com/NetSos/p/1730689.html
Copyright © 2011-2022 走看看