Parser un fichier xml à l'aide de c++ & Qt

J'essaye de parser un fichier XML, avec la structure suivante:

<I>
  <C c="test1">
     <H><Pd pd="123"/>
        <f p="789" r="456"/>
     </H>
     <M m="test2">
       <H><Pd pd="3456"/><R r="678"/>
       </H>
     </M>
  </C>
  <T t="0">
     <T2>123</T2>
     <T3>2345</T3>
  </T>
  <T t="1">
     <T1>23456</T1>
     <T2>23</T2>
     <T3>123</T3>
     <T4>456</T4>
  </T>
</I>

J'ai une Liste de nombres par exemple 0 et 1, et un modèle de recherche par exemple, '23'
Maintenant je recherche le fichier XML pour tous les T-nœuds avec t="un certain nombre de ma liste" où l'un des nœuds enfants(T1, T2,T3) contient le modèle de recherche.

Quelqu'un peut-il m'aider à obtenir commencé avec ce problème? Je veux utiliser l'intervalle Qt fonctions, mais ne sais pas vraiment comment commencer.

Je suis heureux de tous les conseil!

  • Essayez de construire un arbre au premier abord, de manière récursive. Ensuite, la recherche de l'arbre de requête. Il serait mieux si vous pouvez fournir exacte de la structure du fichier XML.
  • Assurez-vous d'abord que votre XML suit un schéma spécifique, alors jetez un oeil à XQuery.
  • Taufique Hussaiun Le XML de la structure est comme je l'ai collé sauf qu'elles sont beaucoup plus <T> et <C> nœuds. En plus de cela c'est la structure exacte.
  • Le XML suit un spécifique shema(I->T->T1). et merci je vais voir ce que XQuery peut le faire pour moi 🙂
  • Prendre un coup d'oeil sur QXmlStreamReader - doc.qt.digia.com/qt/qxmlstreamreader.html
InformationsquelleAutor samoncode | 2012-10-16