什么是两个XML文件合并成一个最快的方法

编程入门 行业动态 更新时间:2024-10-25 16:22:50
本文介绍了什么是两个XML文件合并成一个最快的方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

如果我有XML1和XML2两个字符串,它都再次以相同的格式present XML。什么是这些结合在一起的最快方法?格式并不重要,但我只是想知道我怎么能摆脱或关闭?

XML1:

<?XML版本=1.0编码=UTF-8&GT?;<&allnodes中GT;   <&节点A GT;      <节点B GT;&TEST1 LT; /节点B GT;      <节点B GT; test2的< /节点B GT;   < /节点A>< / allnodes中>

XM2:

<?XML版本=1.0编码=UTF-8&GT?;<&allnodes中GT;   <&节点A GT;      <节点B GT;&TEST6 LT; /节点B GT;      <节点B GT;&TEST7 LT; /节点B GT;   < /节点A>   <&节点A GT;      <节点B GT; test99< /节点B GT;      <节点B GT; test23< /节点B GT;   < /节点A>< / allnodes中>

和有这样的事情:

<?XML版本=1.0编码=UTF-8&GT?;    <&allnodes中GT;          <&节点A GT;              <节点B GT;&TEST1 LT; /节点B GT;              <节点B GT; test2的< /节点B GT;          < /节点A>         <&节点A GT;              <节点B GT;&TEST6 LT; /节点B GT;              <节点B GT;&TEST7 LT; /节点B GT;           < /节点A>           <&节点A GT;              <节点B GT; test99< /节点B GT;              <节点B GT; test23< /节点B GT;           < /节点A>    < / allnodes中>

解决方案

要做到这一点,最简单的方法是使用LINQ to XML。您可以使用联盟或的Concat 的根据您的需要。

VAR XML1 = XDocument.Load(file1.xml);变种XML2 = XDocument.Load(file2.xml);//合并和删除重复VAR combinedUnique = xml1.Descendants(allnodes中)                          .Union(xml2.Descendants(allnodes中));//结合,并保持副本VAR combinedWithDups = xml1.Descendants(allnodes中)                           .Concat(xml2.Descendants(allnodes中));

If I have two string of xml1 and xml2 which both represent xml in the same format. What is the fastest way to combine these together? The format is not important, but I just want to know how can I get rid off or ?

xml1 :

<?xml version="1.0" encoding="utf-8"?> <AllNodes> <NodeA> <NodeB>test1</NodeB> <NodeB>test2</NodeB> </NodeA> </AllNodes>

xm2 :

<?xml version="1.0" encoding="utf-8"?> <AllNodes> <NodeA> <NodeB>test6</NodeB> <NodeB>test7</NodeB> </NodeA> <NodeA> <NodeB>test99</NodeB> <NodeB>test23</NodeB> </NodeA> </AllNodes>

and have something like this :

<?xml version="1.0" encoding="utf-8"?> <AllNodes> <NodeA> <NodeB>test1</NodeB> <NodeB>test2</NodeB> </NodeA> <NodeA> <NodeB>test6</NodeB> <NodeB>test7</NodeB> </NodeA> <NodeA> <NodeB>test99</NodeB> <NodeB>test23</NodeB> </NodeA> </AllNodes>

解决方案

The easiest way to do this is using LINQ to XML. You can use either Union or Concat depending on your needs.

var xml1 = XDocument.Load("file1.xml"); var xml2 = XDocument.Load("file2.xml"); //Combine and remove duplicates var combinedUnique = xml1.Descendants("AllNodes") .Union(xml2.Descendants("AllNodes")); //Combine and keep duplicates var combinedWithDups = xml1.Descendants("AllNodes") .Concat(xml2.Descendants("AllNodes"));

更多推荐

什么是两个XML文件合并成一个最快的方法

本文发布于:2023-06-01 10:27:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/413001.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:最快   两个   文件合并   方法   XML

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!