Uma dica que, talvez, seja simples para os iniciados na QT, mas que me fez perder algum tempo raciocinando a respeito da solução …

O problema: navegar entre itens irmãos em um arquivo Xml, usando um objeto QDomElement. Por exemplo, você tem um arquivo Xml parecido com isto:

<minhatag indice=”0″>
<algumacoisa>valor</algumacoisa>
</minhatag>
<minhatag indice=”1″>
<algumacoisa>outro valor</algumacoisa>
</minhatag>

<minhatag indice=”N”>
<algumacoisa>ainda valor</algumacoisa>
</minhatag>

Como fazer para ir da “minhatag” com índice 0 para a “minhatag” com índice N? A solução é incrivelmente simples:

QDomElement mytag;// Código de carregamento e leitura do XML

// Suponha que root é o QDomElement que aponta para o nodo raiz. Isso vai
// posicionar mytag no primeiro nodo (de indice 0)

mytag = root.firstChildElement(“minhatag”);
while (!mytag.isNull()) {
// Seu código de tratamento do QDomElement aqui.

// Isso vai posicionar mytag para o próximo nodo, e assim sucessivamente.
mytag = mytag.nextSiblingElement(“minhatag”);
}

Simples, não?

One comment on “Navegando pelas tags XML usando a QT

  • XAngel

    Boa véio!
    ^^

    Bem simples mesmo…
    hehe

Deixe uma resposta