-1

私は2つのxmlファイルを持っています

XML1

 <node>
    <name>abc</name>
    <age>25</age>
  </node>

XML2

 <node>
    <name>abc</name>
    <age>25</age>
  </node>
  <node>
    <name>xyz</name>
    <age>27</age>
  </node>

これら 2 つのファイルを比較し、不足しているノードを XML2 から XML1 に追加します。C++ で tinyxml を使用しています。

各ノードにguidを追加することを考えています

<node id={732C8F52-D3E2-4929-9199-48F8F38EA5D3}>
    <name>xyz</name>
    <age>27</age>
  </node>

ここで比較するときに、両方の xml のノードをループして、id に基づいてノードを比較し、不足しているノードを XML1 に追加できます。

これを達成するためのより良い方法はありますか?

4

1 に答える 1

0

Boost RepositoryのProperty_Treeライブラリ、TinyXMLまたは pugixmlで提供されているものなど、非常に強力であると言われている XML 解析ライブラリを使用することをお勧めします。

上記で提供される機能に基づいて、いくつかのコンパレータを見つけて(または単純に作成して)、レコードを比較できる必要があります。

Boost を使用して、より多くの XML ファイルを読み書きします

于 2016-06-01T11:37:58.847 に答える