Frage zu Speichern in Doc/View
-
Ich such mal ein gutes Beispiel wie man Daten anders abspeichern kann als mit den Serialize.
Ich habe Dokumente mit ner menge an Informationen die werden dank ner Klasse von Codeproject jetzt auch auf verschiedenen Seiten angezeigt gehören aber alle ins selbe dokument. Beim Serialize ist aber nur durch die reienfolge festgelegt was was ist.
da es aber sein kann das später mal noch etwas dazukommt würde ich eher ein Dateiformat bevorzugen das mit Tags arbeitet oder so.
Gibts im netz eigentlich ein paar gute Beispiele dazu oder hat jemand mal nen kleinen Codeschnipsel parat?
-
Eine Versionsnnummer am Kopf der Datei und schon kann man auch mit so etwas leben.
-
XML ist ein brauchbares Dateiformat mit hoher Variabilität.
Siehe z.B. TinyXML: http://www.grinninglizard.com/tinyxml/
(da sind kleine Demos dabei)
Konkrete Anwendung z.B. hier: http://www.c-plusplus.net/forum/viewtopic-var-t-is-150972-and-highlight-is-xml.html
-
eine frage hätte ich dazu noch was währe denn "richtige weg dies in einem Programm einzubauen.
ersetze ich einfach den code in der funktion
::Serialize(CArchive& ar)
oder muss ich ne andere Virtuelle funktion umbiegen?
-
Serialize ist doch OK. Baue das XML DOM Dokument im Speicher auf und streame es in die Datei. Beim Lesen umgekehrt.
-
@Martin Richter
also erst das ganze zusammenbauen und dann einfach per ar<< xml; in die Datei abspeichern , hab ich das richtig verstanden
-
Nun erst den xml stream erzeugen und dann den String in die Datei. Ja genau so!
-
wo wird denn die funktion serialize aufgerufen ? kann man den aufruf nicht komplett umgehen? wenn ich das schreiben in die datei ja selbst durchführen muss brauch ich den aufruf ja nicht