Serialisieren von Daten nach und von Dateien

Die Grundidee dem permanenten Speicher besteht darin, dass ein Objekt in der Lage sein sollen, deren aktuellem Status zu schreiben, durch die Werte der zugehörigen Membervariablen zum permanenten Speicher.Später kann das Objekt neu erstellt werden, indem liest oder "," der Objektzustand aus dem permanenten Speicher deserialisiert.Ein Punkt besteht darin, dass das Objekt selbst zum Lesen und Schreiben von ihren eigenen Zustand zuständig ist.Daher ist für eine Klasse beibehalten, muss er die grundlegenden Vorgänge Serialisierung implementieren.

Das Framework stellt eine Standardimplementierung zum Speichern von Dokumenten auf Datenträgerdateien als Reaktion auf das Speichern und Speichern als Befehle im Menü Datei und zum Laden von Dokumenten von Datenträgerdateien als Reaktion auf den geöffneten Befehl bereit.Bei sehr wenige Aufgaben können Sie die Fähigkeit eines Dokuments implementieren, Daten in eine und aus einer Datei zu lesen und zu schreiben.Die Hauptsache, die Sie ausführen müssen, ist Serialize-Memberfunktion in der Dokumentklasse zu überschreiben.

Der MFC-Anwendungs-Assistent platziert eine skelettartige Überschreibung der CDocument-Memberfunktion Serialize in der Dokumentklasse, die sie für Sie erstellt.Nachdem Sie die Membervariablen der Anwendung implementiert wurde, können Sie die Serialize Überschreibung mit Code füllen, der die Daten in ein "Archiv" sendet Objekt, das an eine Datei verbunden ist.Ein CArchive-Objekt ist für cin und cout Eingabe/Ausgabe-Objekten aus der C++-iostream Bibliothek.CArchive liest und schreibt jedoch keine Binärformat formatierten Text.

Worüber möchten Sie mehr erfahren?

Die Rolle des Dokuments bei der Serialisierung

Das Framework automatisch reagiert auf das Menü Datei, die geöffnet sind, Speichern und Speichern als Befehle, indem die Serialize-Memberfunktion des Dokuments aufruft, wenn er implementiert wird.Ein ID_FILE_OPEN Befehl zum Beispiel wird eine Handlerfunktion im Anwendungsobjekt an.Während dieses Vorgangs wird der Benutzer und reagiert auf das Dialogfeld Datei öffnen und das Framework erhält den Dateinamen, der vom Benutzer ausgewählt werden.Das Framework erstellt ein Objekt CArchive setup zum Laden von Daten in das Dokument, und übergibt das Archiv zu Serialize.Das Framework verfügt bereits über die Datei geöffnet.Der Code in Serialize-Memberfunktion des Dokuments liest die Daten in das Archiv von Datenobjekten erstellt und nach Bedarf erneut auf.Weitere Informationen über die Serialisierung finden Sie im Artikel Serialisierung.

Die Rolle der Daten bei der Serialisierung

Im Allgemeinen sollten Klassentyp von Daten in der Lage sein, sich selbst zu serialisieren.Das heißt, wenn Sie ein Objekt in einem Archiv übergeben, sollte das Objekt wie dem Archiv und können sich von dem Archiv lesen.MFC bietet Unterstützung für Klassen auf diese Weise serialisierbar machen.Wenn Sie eine Klasse entwerfen, um einen Datentyp zu definieren und Daten dieses Typs zu serialisieren, entwerfen Sie für die Serialisierung.

Siehe auch

Referenz

Verwenden der Dokumente