0

我正在尝试读取一个简单的 xml 文件,但遇到了一些问题。这是阅读它的代码:

    XmlDocument doc = new XmlDocument();
    doc.Load("C:/file.xsd");

    XmlNode loc = doc.SelectSingleNode("/schema/annotation/appinfo");
    XmlNodeList refNode= loc.SelectNodes("referral");

这是 XML 的样子:

<schema>
  <annotation>
   <appinfo>
     <referral/>
     <referral/>
     <referral/>
   </appinfo>
  </annotation>
</schema>

为了便于阅读,我已对其进行了简化,但我正在尝试读取“推荐”节点。我确认正在读入该文件,但“loc”变量为空。

希望能得到一些帮助,谢谢!

4

1 回答 1

0

以下代码给出了正确的结果,因此通过给定路径选择节点没有问题。我认为你必须添加正确的命名空间才能工作。

string xml = @"<schema>
                <annotation>
                <appinfo>
                    <referral/>
                    <referral/>
                    <referral/>
                </appinfo>
                </annotation>
            </schema>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);

XmlNode loc = doc.SelectSingleNode("/schema/annotation/appinfo");
XmlNodeList refNode = loc.SelectNodes("referral");
于 2013-05-01T20:53:01.420 回答