根据XPath查找XML字符串的行号

时间:2013-02-28 03:00:46

标签: c# .net xml xpath

我正在尝试在包含XML的多行字符串中找到给定Xpath指向的行。

换句话说,我有一个包含XML的字符串。我有一个给定的Xpath,我想用它来找到字符串的确切行号。

最好的方法是什么?

2 个答案:

答案 0 :(得分:2)

您可以考虑使用XmlTextReader代替。这有LineNumber和LinePosition属性。

XmlTextReader确实有一些有限的“读取,直到你达到这样一个节点”属性,但它们并不像XPath那样复杂。根据XPath的复杂程度,这可能会也可能不会起作用。

我找到了主题here的链接。

答案 1 :(得分:0)

您可以将字符串中的XML加载到实际的XML类中。

XDocument x = XDocument.Parse(yourStringContainingXML);
string contentOfNode = x.Descendants(XName.Get("NameOfTheNode")).First().Value;