XML Daten inkrementell in Datei schreiben

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
astraios
User
Beiträge: 9
Registriert: Montag 21. April 2008, 15:45

Hallo!

Ich habe ein Projekt, bei dem Ergebnisse in einem minidom Objekt abgelegt werden.
Zum Schluss wird das ganze als XML-Datei gespeichert.
Jetzt ist die Situation folgende, dass die abgelegten Daten mit der Zeit recht viel werden. Wenn ich nun nur zum Schluss das XML File schreiben lasse, laufe ich gefahr, die kompletten Daten zu verlieren, wenn das Programm vorher chrasht.
Wenn ich nun zwischendrin öfters mal die Daten als XML schreiben lasse, ist das wenig performant, weil dann immer die gesamte (recht große Datei) komplett geschrieben werden muss.

Gibt es eine Möglichkeit, nebenbei jeweils nur neu hinzugekommene Daten in die Datei schreiben zu lassen?

Danke schon mal im Voraus für die Antworten :D
BlackJack

Nicht wenn da immer gültiges XML in der Datei sein soll. Um Dateien zu erweitern ist XML eben nicht so günstig.
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Es kann sinnvoll sein, die Daten bei der langen Laufzeit in eine Datenbank zu speichern und erst am Ende die XML-Datei zu generieren. "Datenbank" muss hierbei kein RDMBS sein, sondern du kannst du im einfachsten Fall die Daten in einem anderen Format z. B. Zeilenweise an eine Klartext-Datei anhängen (s. auch `fileobj.flush()`).
Antworten