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; }