我试着在这里查看,但找不到合适的答案。我有一个XML字符串,它有一堆节点 我想从这个字符串中只提取几个节点,并用新的根元素附加它并返回它。
我知道如何通过将其加载到XMLDocument并选择节点来完成此操作。有没有更好的方法使用XpathNavigator或XmlReader执行此操作?
这是我的字符串
<root>
<node1/>
<node2/>
<node3/>
<node4/>
<node5>
</root>
我希望我的输出字符串是
<root>
<node3/>
<node4/>
</root>
必须以有效的方式完成。
答案 0 :(得分:0)
为简单起见,我会使用XDocument.Parse()
。并通过提供的函数操作DOM。由于XML是以字符串形式提供的,可能很小,我愿意打赌你不会看到复杂性问题。
如果要删除大量节点,建议您使用XPath字符串列表。然后,对于每个字符串,您可以使用doc.XPathSelectElements()
查找所有元素,并在每个元素上调用remove()
。生成的XDocument将只包含其余节点。