0

我想将父节点和子节点从一个 xml 文件复制到另一个。在下面的示例中,我想将项目从文件 #2 复制到文件 #1:

输入文件#1:

<Top>
  <Items>
    <Item>one</Item>
    <Item>two</Item>
  </Items>
</Top>

输入文件#2:

<Top>
  <Items>
    <Item>three</Item>
    <Item>four</Item>
  </Items>
</Top>

我希望最终的 XML 文件如下所示:

<Top>
  <Items>
    <Item>one</Item>
    <Item>two</Item>
  </Items>
  <Items>
    <Item>three</Item>
    <Item>four</Item>
  </Items>
</Top>

我尝试了以下非功能代码。InsertAfter 调用不适用于 xml 文件。有什么帮助吗?

XmlDocument prev = new XmlDocument(); prev.Load(filename1);
XmlDocument curr = new XmlDocument(); curr.Load(filename2);
XmlNode prev_node = prev.SelectSingleNode("Items");
XmlNode curr_node = curr.SelectSingleNode("Items");
prev.InsertAfter(curr_node, prev_node);

非常感谢!

4

1 回答 1

2

您可以使用 LINQ to XML:

var prev = XDocument.Load(filename1);
var curr = XDocument.Load(filename2);
prev.Root.Add(curr.Root.Elements());
于 2014-04-30T04:59:49.230 回答