XmlDocument 写入代码没有报错,但也没有写入,不知道那里错误
写入函数如下 public static void writexml(string wstring)//写入 { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("bookstore.xml"); XmlNodeList nls = xmlDoc.SelectSingleNode("/bookstore/book").ChildNodes;//获取bookstore节点的所有子节点 foreach (XmlNode xn1 in nls)//遍历 { XmlElement xe2 = (XmlElement)xn1;//将子节点类型转换为XmlElement类型 if (xn1.Name == "author")//如果找到 { xe2.InnerText = wstring; break;//找到退出来就可以了 } } }执行代码如下string Desconstring = "1225555558745"; Maticsoft.DBUtility.PubConstant.writexml(Desconstring); MessageBox.Show("配置完成");执行代码 没有报错,但author 的innertext并没有任何改变,我的代码到底错在那里,请大师指正,谢谢
5回答
-
杨__羊羊
应该是没有找到任何节点
XmlNodeList nls = xmlDoc.SelectSingleNode("/bookstore/book").ChildNodes;//获取bookstore节点的所有子节点
改为:XmlNodeList nls = xmlDoc.SelectSingleNode("bookstore").ChildNodes;这样写才是获取bookstore节点下的所有子节点
-
饮歌长啸
最后写上xmlDoc.Save()方法保存到你的文件中, 你修改的东西还是文件在内存的副本而已。