猿问

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并没有任何改变,我的代码到底错在那里,请大师指正,谢谢
茅侃侃
浏览 469回答 5
5回答

杨__羊羊

应该是没有找到任何节点 XmlNodeList nls = xmlDoc.SelectSingleNode("/bookstore/book").ChildNodes;//获取bookstore节点的所有子节点 改为:XmlNodeList nls = xmlDoc.SelectSingleNode("bookstore").ChildNodes;这样写才是获取bookstore节点下的所有子节点            

饮歌长啸

最后写上xmlDoc.Save()方法保存到你的文件中, 你修改的东西还是文件在内存的副本而已。
随时随地看视频慕课网APP
我要回答