【发布时间】:2017-01-16 06:52:15
【问题描述】:
这是我的 XML 文件的一部分
<summary>
<testcase>
<result value="-45">100</result>
<result value="0">200</result>
<result value="45">300</result>
</testcase>
<testcase>
<result value="-45">1000</result>
<result value="0">2000</result>
<result value="45">3000</result>
</testcase>
<testcase>
<result value="-45">0.1</result>
<result value="0">0.2</result>
<result value="45">0.3</result>
</testcase>
</summary>
我需要通过属性名称过滤来获取元素值。
作为示例,我需要获取属性 = 45 的所有值然后 答案是 300,3000,0.3
XmlDocument doc = new XmlDocument();
doc.Load(_xmlFilePath);
XmlNodeList nodelist = doc.SelectNodes("//testcase");
for (int i = 0; i < nodelist.Count; i++)
{
Double value;
Double.TryParse(nodelist[i].SelectSingleNode("result").Attributes["45"].InnerText, out value);
Console.WriteLine("value : " + value);
}
但上面的代码给出了以下错误信息。
对象引用未设置为对象的实例。
感谢任何建议。
谢谢。
【问题讨论】:
标签: c# xml xmldocument xmlnode xml-attribute