Seite 1 von 1

XML: Empty Elements rausschreiben mit QXMLStreamWriter

Verfasst: 7. Juni 2007 12:11
von gerome69
Hallo zusammen,
teste gerade mit den neuen XML-Features von QT 4.3.0 rum.

Habe folgendes Konstrukt, was erstmal eine XML-Datei nur 1:1 rauschreiben soll (später eben mit Bearbeitung des Contents):

Code: Alles auswählen

QXmlStreamReader xmlReader(&xmlFile);
QXmlStreamWriter xmlWriter(&outFile);
    
while (!xmlReader.atEnd()) {
    xmlReader.readNext();
        
        switch (tokenType) {

          // Hier dass Handling der Elemente
        }
 
       xmlWriter.writeCurrentToken(xmlReader);

    }
Nur leider macht er folgendes aus EmptyElements:
<UnicodeKey attr1="..." attr2="..." />
=>
<UnicodeKey attr1="..." attr2="..."></UnicodeKey>

Formell natürlich das gleiche, aber Kunden mögen es nicht, wenn man ihre Struktur verändert.

Ich sehe auf:
http://doc.trolltech.com/4.3/qxmlstream ... mbers.html
nichts, wo man den Umgang mit EmptyElements einstellen könnte.
Probleme dürfte auch sein, daß schon der QXmlStreamReader ein EmptyElements "zweiteilig" zunächst als Start, dann als End-Element einliest.

Danke für Tips, Gérôme

Verfasst: 7. Juni 2007 14:18
von upsala
Da scheint es auch nichts zu geben. Ich würde es auf jeden Fall mal im Task-Tracker vorbringen.