前面两篇文章分别介绍了创建xml文件和在xml文件中添加一个节点,见
Asp.net教程:winform中使用C#创建一个xml文件
asp.net教程:C#在xml中添加一个节点
今天在这两个基础上,介绍一下C#修改xml中的某个节点。
我们在前面的winform窗口中的网站名称中输入要修改的网站名称,然后把它在xml对应的网址修改掉。
修改要注意的地方是:要先去xml中查询这个网站名称是否存在于这个xml文件中,如果存在的话,就修改网址;如果不存在的话,就添加节点。
winform窗口的的网站名称的name是sitename,网址的name是siteurl。
public void checknode() { #region 检查节点是否存在 int j = 0; XmlNodeList nodeList = xmlDoc.SelectSingleNode("root").ChildNodes;//获取bookstore节点的所有子节点 foreach (XmlNode xn in nodeList)//遍历所有子节点 { XmlElement xe = (XmlElement)xn; //将子节点类型转换为XmlElement类型 if (xe.GetAttribute("sitename") == sitename.Text.Trim()) { j = 1; xe.SetAttribute("siteurl", siteurl.Text.Trim()); break; } } if (j == 0) { //添加 addnode(); MessageBox.Show("添加成功"); } else { xmlDoc.Save(xmlfile); MessageBox.Show("修改成功"); } #endregion }(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
这是C#修改节点的函数,里面的其他函数见前面两篇文章。
现在双击winform上面的“添加或者修改”按纽,进入代码编写状态,在里面输入checknode();就可以了