c# - XmlNode.InnerText

标签 c# .net xml

我们有这样的 XML:

<Example>
  <Node>Some text here
    <ChildNode>Child 1</ChildNode>
    <ChildNode>Child 2</ChildNode>
  </Node>
</Example>

我们正在使用 XmlDocument 来解析它。

当我们有“节点”元素的 XmlNode 时,XmlNode.InnerText 返回给我们:

"Some text hereChild 1Child2"

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

注意:我们也不想切换到使用一组不同的类来解析此 XML,这会导致代码更改太多。

最佳答案

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

返回

"Some text here\r\n    "

text.Trim() 返回

"Some text here"

关于c# - XmlNode.InnerText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4714962/

相关文章:

.net - 语义日志记录进程外 ElasticSearch 配置

java - 构建-impl.xml :1045: The module has not been deployed error

c# - 哪个是paypal cancel url响应参数

c# - DataTable的DataColumn中保存图片的DataType

c# - 字符串转换为时间格式,但是如何?

python - 如何通过脚本从 XMI 正确导入一个完整的 Enterprise Architect 项目?

xml - 关于数据模型与数据格式之间的区别

c# - Observable.Interval 选择有状态服务会导致奇怪的行为

c# - 错误 : "Padding is invalid and cannot be removed" using asymmetric algorithm

c# - 远程 MSMQ 连接性能