3
我有以下结构的XML文件:如何找到XML文件中属性值的最大值?
<doc>
<rootelement>
<childelement id="0" />
<childelement id="1" />
.
.
</rootelement>
</doc>
我想找到id
属性
的想法,我心目中的最高数值是一样的东西:
int highest = -1;
foreach(var node in xmldoc.SelectNodes("//doc/rootelement/childelement"))
{
highest = Math.Max(GetID(node), highest);
}
其中GetID(XMLNode)
将检索当前节点的属性的值。
是否有一个更紧凑(或更高效)的XPath表达式来做到这一点?
是否有一种变体也可以用XmlDocument而不是XDocument来完成此操作?我已经创建了一个XmlDocument,并将当前代码中的所有内容(从XmlDocument到XDocument)转换(为了一致性),需要进行一些重构。 – Pep
@Pep sure sure you can(I'll update answer in a minute)but Linq to Xml is a preferred way to work with xml –
很好,谢谢。我现在正在阅读http://stackoverflow.com/questions/1542073/xdocument-or-xmldocument,而且由于我们正在编写一个.NET 4.0插件,我没有看到任何将来重构使用XDocument的缺点。 – Pep