XmlReader:是否有找到第一个子节点和下一个兄弟节点的方法?

本文关键字:兄弟 下一个 节点 方法 子节点 是否 第一个 XmlReader | 更新日期: 2023-09-27 18:14:22

我正在移植使用XmlDocument的代码。XmlNode有一个FirstChild和NextSibling属性。使用XmlReader,是否有一种解析方法直到第一个子节点或下一个兄弟节点(假设xmlreader已解析)到xml中的任意元素?

XmlReader:是否有找到第一个子节点和下一个兄弟节点的方法?

使用xmlreader,您正在其他方案中工作。你总是当前节点上,然后切换到下一个节点。对于当前节点,您可以询问IsEmptyElement(它表示标记是否为<something attr=value/>形式)。如果元素为空,显然没有子项。

考虑IsEmptyElement为假的情况,现在你有类似<something> <maybechild/> </something>的东西。你可以说ReadStartElement,它将把你移动到下一个位置。对于下一个位置,你检查IsStartElement。如果这是真的,你有一个孩子,你在它。如果没有,你在</something>,没有孩子。

更多文档:http://msdn.microsoft.com/en-us/library/t9bfea29.aspx.

构建XPathDocument并使用CreateNavigator创建XPathNavigator。它具有(顾名思义)导航XML的方法。对应的方法是MoveToFirstChildMoveToNext