【问题标题】:How to merge multiple xml files with different node structure into a single xml file in java or any other tool?如何将具有不同节点结构的多个xml文件合并到java或任何其他工具中的单个xml文件中?
【发布时间】:2012-06-22 11:40:52
【问题描述】:

我有许多具有不同节点结构和不同节点的 xml 文件。现在我想将这两个 xml 文件合并到一个 xml 文件中。经过搜索,我发现我可以使用 xslt 来合并多个 xml 文件,并且每个示例都处理具有相同节点结构的 xml 文件。

感谢斯蒂芬的建议,但我面临不同的情况。以下是我想要合并在一起的 xml 文件的 sn-p 以及最终的 xml 文件应该是什么样子。

file1.xml

<Equipment>
<Items>
   <Item>
     <ID>_stdpart_38100</ID>
     <Index>1</Index>
     <SubcategoryIDRef>Power</SubcategoryIDRef>
  </Item>
 </Items>
 <Subcategories>
  <Subcategory>
    <ID>Power</ID>
    <CategoryIDRef>Power and Handling</CategoryIDRef>
  </Subcategory>
  <Categories>
  <Category>
  <ID>Power and Handling</ID>
  <Title>Power and Handling</Title>
  <Subtitle />
  </Category>
 <Categories>
 </Equipment>

file2.xml

<Models>
 <Model>
 <ID>S Sedan</ID>
<Name>S Sedan</Name>
<Index>1</Index>
<Equipment>
  <Item>
    <IDRef>_stdpart_38100</IDRef>
    <Optionality>S</Optionality>
  </Item>
<Equipment>
</Model>
</Models>

最终合并后的文件应如下所示 合并的.xml

<Models>
 <Model>
    <ID>S Sedan</ID>
    <Name>S Sedan</Name>
    <Index>1</Index>
    <Equipment>
    <Item>
        <ID>_stdpart_38100</ID>
       <Index>1</Index>
       <Subcategory>
         <ID>Power</ID>
         <Category>
            <ID>Power and Handling</ID>
            <Title>Power and Handling</Title>
           <Subtitle />
         </Category>
     </Subcategory>
     <Optionality>S</Optionality>
   </Item>
   </Equipment>
  </Model>
</Models>

【问题讨论】:

  • 您的 DTD 是否支持不同的节点结构?

标签: java xml


【解决方案1】:

我发现我可以使用 xslt 来合并多个 xml 文件,并且每个示例都在处理具有相同节点结构的 xml 文件。

这是一个示例,其中 XML 文件具有完全不同的结构:

如果这没有帮助,请使用您的 XML 示例以及您需要合并文件的外观来更新您的问题。

【讨论】:

  • 嘿斯蒂芬,我已经更新了我的问题...我要求你通过并建议解决方案
  • @abhijeet - 很抱歉,但这相当于我为你做你的工作。这不是 SO 的意义所在。
  • 我明白你的意思...我只是在比较两个不同的 xml 文件中的节点...如果我能得到一些例子...我可以做到
猜你喜欢
  • 1970-01-01
  • 2022-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-16
  • 2013-10-19
  • 1970-01-01
  • 2016-12-09
相关资源
最近更新 更多