ich weiß es kann trivial klingen, aber ich komm einfach nicht klar. Ich hab ein xml Dokument aus einer OpenOffice Spreadsheet Datei (content.xml) aus dem ich Werte auslesen will.
Da dacht ich mir les ich es mit einem QDomDocument ein. Hab mich hier http://zez.org/article/articleview/28/1/ etwas über die Struktur informiert aber blick nicht ganz durch wie ich das ganze Durchlaufen soll.
hier mal meine ersten versuche damit klar zu kommen:
Code: Alles auswählen
QDomDocument
Utils::readODS(QString filepath)
{
QuaZipFile zipfile;
zipfile.setZipName(filepath);
zipfile.setFileName(QString("content.xml"));
QDomDocument xml;
xml.setContent(&zipfile);
QStringList searchlist;
searchlist << "office:document-content"
<< "office:body"
<< "office:spreadsheet";
QDomNodeList n(xml.childNodes());
for(int i = 0; i < searchlist.count(); ++i)
{
int j;
for(j = 0; j < n.count(); ++j)
{
if(n.at(j).nodeName() == searchlist.at(i))
{
break;
}
if(j == (n.count() - 1))
{
return QDomDocument();
}
}
xml = n.at(j);
n = xml.childNodes();
}
return xml;
Die Funktion soll mir nur die relevante Daten Sektion aus dem xml Dokument zurückgeben, die ich dann mit anderen Funktionen weiter durchsuchen will.
Gruß Thorsten