Seite 1 von 1

XML formatiert speichern

Verfasst: 8. August 2010 16:27
von dusti
Ich habe folgenden Code:

Code: Alles auswählen

QDomDocument doc("Library");
    QDomElement root = doc.createElement("Library");
    doc.appendChild(root);

    //Hier wir das XML-Dokument mit Daten "Gefuellt"

    QFile file("Library.xml");
    if (file.open(QFile::ReadWrite | QFile::Truncate)) {
        QTextStream out(&file);
        doc.save(out, 4);
        file.close();
    }
Mein Problem ist nun, dass die XML-Datei nicht "formatiert" ist, d.h. sie enthält keine Zeichenumbrüche, die für mich aber wichtig sind, damit man die XML-Datei auch bequem im TextEditor anschauen kann. ich mache meines Wissens nach nichts falsch und habe den Code zum Speichern der Datei auch aus der Hilfe, deshalb verstehe ich nicht ganz, wie es dazu kommen kann.
Über Hilfe freue ich mich!

Verfasst: 9. August 2010 09:04
von RavenIV
Bei Qt 4.6 ist ein "Beautyfier" dabei, der die xml-Datei hübsch machen kann.
Einfach im Qt-Assistant danach suchen.

Verfasst: 9. August 2010 11:46
von franzf
RavenIV hat geschrieben:Bei Qt 4.6 ist ein "Beautyfier" dabei, der die xml-Datei hübsch machen kann.
Einfach im Qt-Assistant danach suchen.
Das interessiert mich jetzt. "Beautyfier" wird nicht gefunden. Es gibt einen QXmlFormatter:
The QXmlFormatter class is an implementation of QXmlSerializer for transforming XQuery output into formatted XML.
Also auch nicht das Gesuchte.

@ dusti:
Bei mir kommt bei "doc.save()" aber ein schön formatiertes XML raus. Evtl. ein Bug bei dir?
Zeichenumbrüche? Du meinst Zeilenumbrüche, oder? Unter welcher Plattform machst du das? Welche Qt-Version? Welcher Compiler? Mit welchem Editor öffnest du die Datei? Schonmal einfach die Datei im Programm wieder geladen und den Inhalt in einem QTextBrowser angezeigt?

Verfasst: 9. August 2010 12:07
von dusti
Meinst du die Klasse "QXmlStreamWriter"? Oder etwas anderes?