【发布时间】:2013-05-04 10:10:09
【问题描述】:
我想从一个 XML 文件中检索信息,但是它的格式很奇怪。在这里……
<?xml version="1.0"?>
<Careers>
<CareerList>
<CareerName></CareerName>
<CareerDescription></CareerDescription>
</CareerList>
<CareerList>
<CareerName>Cook</CareerName>
<CareerDescription>Cooks food for people</CareerDescription>
</CareerList>
</Careers>
我想获得第二个值,即 Cook 和为人们烹制食物的描述,但我只得到空节点。比如……
public string CareerDescription(string CareerFile)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(CareerFile);
string Description = xmlDoc.SelectSingleNode("Careers/CareerList/CareerDescription").InnerText;
return Description;
}
如何选择第二个节点而不是第一个节点?
【问题讨论】:
-
您是否尝试过将 `string Description = xmlDoc.SelectSingleNode("Careers/CareerList/CareerDescription").InnerText;` 更改为类似
string Description = xmlDoc.SelectSingleNode("/Careers/CareerList/@CareerDescription").value;的内容,您可能会检查是否不为空然后跳过或返回非空描述值
标签: c# .net xml-parsing xmlnode