XML 和 .NET:如何用从原始 xml 数据加载的许多其他节点替换特定节点

Posted

技术标签:

【中文标题】XML 和 .NET:如何用从原始 xml 数据加载的许多其他节点替换特定节点【英文标题】:XML and .NET: How to replace specific node with many other ones loaded from raw xml data 【发布时间】:2010-04-18 12:08:59 【问题描述】:

假设我们在主 xml 文件中有这样一个元素:<group name="gr1" filename="groups/gr1.xml"/>。第二个文件 gr1.xml 包含如下内容:

<item name="i1">Item one</item>
<item name="i2">Item two</item>
<item name="i3">Item three</item>

请注意,gr1.xml 中没有 XML 声明,只是没有单个父节点的普通项目。

那么...用&lt;item/&gt;s 替换&lt;group/&gt; 的最佳方法是什么?

我已经尝试过一些方法,例如手动将 gr1.xml 内容包含在带有 XML 声明的单个节点中并将其加载到 XmlDocument 中,但这看起来不是一个好的解决方案。

【问题讨论】:

【参考方案1】:

您可以使用 DTD 和外部实体。您需要在加载外部文件时显式启用 DTD 处理。

否则你可以加载一个文档片段,然后自己添加它的节点。

【讨论】:

实际上要容易得多。我刚刚想通了:)

以上是关于XML 和 .NET:如何用从原始 xml 数据加载的许多其他节点替换特定节点的主要内容,如果未能解决你的问题,请参考以下文章

如何用webservice从客户端发送一个xml给服务端接收并插入数据库

如何用python读取xml文件

如何用http post的方式发送一个xml格式的数据,并且response一个xml格式的数据

如何用Curl 来post xml 数据

如何用Curl 来post xml 数据

如何用C或c++写一段代码读取xsd结构生成一个XML文件,现在我有数据文件和XSD文件