C#怎么合并两个XML文档

admin 百科 22
C#合并XML文档需据需求选择方式:场景一追加子节点,场景二按名/属性覆盖合并,场景三嵌入为子元素;注意编码、命名空间及大文件流式处理。

C#怎么合并两个XML文档-第1张图片-佛山资讯网

在C#中合并两个XML文档,关键在于明确“合并”的具体含义:是简单拼接根节点下的子元素,还是按节点名称/属性智能合并(如相同ID的节点取新值),或是将一个XML作为子节点插入另一个。不同需求对应不同实现方式,下面分几种常见场景说明。

场景一:将第二个XML的所有子节点追加到第一个XML的根节点下

适用于结构兼容、只需“拼起来”的情况,比如合并多个配置片段。

  • XDocument.Load() 分别加载两个XML
  • 获取第一个文档的根元素(Root
  • 调用 Root.Add(secondDoc.Root.Nodes()),把第二个文档根下的所有节点(元素、文本等)添加进去
  • 注意:如果第二个XML有声明(<?xml version="1.0"?>)或注释,Nodes() 会包含它们;若只需元素,改用 Root.Elements()

场景二:按节点名合并(同名节点内容覆盖或合并)

例如两个XML都有 <user id="100"></user>,希望用第二个中的值更新第一个中的对应节点。

标签: node 编码 app c#

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~