【发布时间】:2014-09-09 17:05:29
【问题描述】:
我想知道是否有办法在知道我有行号的情况下获取 xml 文档的 XmlNode,我使用 C#,我不想使用 Linq (XDocument) 我需要从 XmlDocument 获取 XmlNode .例如,如果我有这个 XML:
<Document>
<a key="1">AAA</a>
<a key="2">Aa</a>
<a key="3">aaA></a>
<a key="4">aA></a>
<b key="15">BbbB></b>
</Document>
我希望有一个函数将第 4 行作为输入并返回
<a key="3">aaA></a>
所有这些都没有使用 LINQ(仅使用 XmlDocument 和 XmlNode 语法......而不是 XDocument..) 提前致谢
更具体地说,我需要应答器而不是线例如如果 Xml 是这样的:
1. <Document>
2. <a key="1">AAA</a>
3. <a key="2">Aa</a>
4. <a key="3">
5. aaA
6. </a>
7. <a key="4">aA></a>
8. <b key="15">BbbB></b>
9. </Document>
我希望有一个函数将第 4 或 5 或 6 行作为输入,它将返回:
<a key="3">aaA</a>
【问题讨论】:
-
如果你想通过行号来做,不要把它解析成XML,把它解析成文本文件。然后通过索引拉出你想要的字符串并解析它。在您的示例中,您想要的行号是 5。除非您建议您想要节点的第 4 行,在这种情况下,现在您正在解析 xml。
-
如果您需要按行信息选择项目,您可能不得不使用
XmlReader。查看stackoverflow.com/questions/621059/… 和MSDN ILineInfo。