XmlNode.InnerText

jon*_*ers 1 .net c# xml

我们有这样的XML:

<Example>
  <Node>Some text here
    <ChildNode>Child 1</ChildNode>
    <ChildNode>Child 2</ChildNode>
  </Node>
</Example>
Run Code Online (Sandbox Code Playgroud)

我们XmlDocument用来解析这个.

当我们有"Node"元素的XmlNode时,XmlNode.InnerText返回以下信息:

"Some text hereChild 1Child2"
Run Code Online (Sandbox Code Playgroud)

如何在没有子节点内部文本的情况下获取Node元素的内部文本?我们真的不想使用任何RegEx或字符串拆分来完成此任务.

注意:我们也不想切换到使用不同的类来解析这个XML,这将是一个太多的代码更改.

aba*_*hev 6

var doc = new XmlDocument();
doc.LoadXml(xml);
var text = doc.SelectSingleNode("Example/Node/text()").InnerText; // or .Value
Run Code Online (Sandbox Code Playgroud)

回报

"Some text here\r\n    "
Run Code Online (Sandbox Code Playgroud)

text.Trim()返回

"Some text here"
Run Code Online (Sandbox Code Playgroud)