2011-03-03 2 views
-1

У меня есть два XML-файлысравнить и добавлять элементы из одного 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> 

Я хочу сравнить эти два файла и добавить недостающие узлы из xml2 к XML1. Я использую tinyxml в C++.

Я имею в виду добавление Guid на каждый узел, т.е.

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

Теперь, когда я буду сравнивать я могу цикл через узлы как в XML и сравнить узлы на основе идентификатора и добавить недостающие узлы в XML1.

Есть ли лучший способ достичь этого?

+1

........... и? – Nim

+0

извините, задержка немного ... дополнительная информация. – anand

ответ

0

Конечно, лучше использовать библиотеку синтаксического анализа XML, например. один из которых содержится в библиотеке Property_Tree в Boost Repository, TinyXML или pugixml - который считается очень мощным.

Вы должны быть в состоянии найти некоторый компаратор (или просто построить) на основе функциональных возможностей, указанных выше, и сравнить свои записи.

Using Boost to read and write XML files для более.

 Смежные вопросы

  • Нет связанных вопросов^_^