<root>
    <node>      
      <name><![CDATA[1111]]></filename>
      <path><![CDATA[2222]]></savepath>
      .........................
      .........................
    </node>
    <node>
    ..............
    ..............
    </node>
</root>
我想查询name="1111",path="2222"的node节点,这样的xpath怎么写?

解决方案 »

  1.   


        public void loadXml(string loadPath)
        {
            xmlDocment.Load(loadPath);
            XmlNodeList node = xmlDocment.GetElementsByTagName("node");
            foreach (XmlNode xmlnode in node)
            {
                this.Path= xmlnode["path"].InnerText;
                this.Name = xmlnode["name"].InnerText;
            }
        }不过有这个<![CDATA  的没试过 不知道能不能成功继续关注中!
      

  2.   

    三楼的理解错了:
    文档中的node节点都是不重复的,即name和path这两个子节点可以唯一确定一个node。
    所以可以这样来操作:
    doc.DocumentElement.SelectSingleNode(xpath);
    这里的xpath就是要查找的路径,也是我要问的。
    三楼的方法也可以,但是效率要低一些。
      

  3.   

    /root/node[name='1111' and path='2222']