今天在做批量生成XML的时候,碰到一个情况 解析xml文件 selectSingleNode一直返回NULL。
XML的格式开头有一句这个<CE401Message xmlns="http://">
取节点的语句
System.Xml.XmlNode nodes = doc.SelectSingleNode("/CE401Message/aa/bb/cc"); 返回空
给他加上命名空间
System.Xml.XmlNamespaceManager nsmgr = new System.Xml.XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("ns", "http://");//刚开始我是这样写 nsmgr.AddNamespace("xmlns", "http://"); 程序报错说什么前辍不能加,一直搞不懂为什么是加ns
System.Xml.XmlNode root = doc.SelectSingleNode("ns:CE401Message/ns:aa/ns:bb/ns:cc", nsmgr);