如何获取 XmlNode 内的文本

2023-12-11

如何获取 XmlNode 内的文本?见下文:

XmlNodeList nodes = rootNode.SelectNodes("descendant::*");
for (int i = 0; i < nodes.Count; i++)
{
    XmlNode node = nodes.Item(i);

    //TODO: Display only the text of only this node, 
   // not a concatenation of the text in all child nodes provided by InnerText
}

我最终想要做的是将“HELP:”添加到每个节点中的文本中。


最简单的方法可能是迭代节点的所有直接子节点(使用ChildNodes)并测试NodeType看看是否是每一个Text or CDATA。不要忘记可能有多个文本节点。

foreach (XmlNode child in node.ChildNodes)
{
    if (child.NodeType == XmlNodeType.Text ||
        child.NodeType == XmlNodeType.CDATA)
    {
        string text = child.Value;
        // Use the text
    }
}

(仅供参考,如果您可以使用 .NET 3.5,LINQ to XML 就是一个lot使用起来更好。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取 XmlNode 内的文本 的相关文章

随机推荐