合并两个xml文件LINQ
我有两个XML文件合并的问题。 我将两个文件加载到两个对象中,找到两个对象中的目标节点并尝试合并。
这是一个示例:
var nodes1 = XResult1.Descendants("subject"); var nodes2 = XResult2.Descendants("subject"); //nodes1.Add(nodes2.Nodes());
// *合并代码**有人可以帮助我。 提前谢谢…… BB
这是我的XResult1:
你好 你好,我们又见面了 嗨再一次
这是我的XResult2:
你好 再次问好
我的最终结果应该是:
你好 你好,我们又见面了 嗨再一次 你好 再次问好
你想改变:
XResult1.Descendants("subjects").FirstOrDefault(); XResult2.Descendants("subjects").FirstOrDefault();
至
XResult1.Descendants("subject").FirstOrDefault(); XResult2.Descendants("subject").FirstOrDefault();
这是一个更完整的例子:
XDocument document = XDocument.Load(@"C:\XResult1.xml"); XElement subjectElement = document.Descendants("subject").FirstOrDefault(); XDocument document2 = XDocument.Load(@"C:\XResult2.xml"); XElement subjectElement2 = document2.Descendants("subject").FirstOrDefault(); subjectElement.Add(subjectElement2.Nodes());
如果要合并subject
元素内的元素,则需要在树中进一步向下移动,因此将nodes1
和nodes2
设置为以下内容:
XElement nodes2 = XResult2.Descendants("subjects").Descendants("subject").FirstOrDefault();