CArchive::CArchive

CArchive (CFile *pFile,UINTnMode,IntnBufSize=4096,Void *LpBufNULL=);
werfen (
CMemoryException, CArchiveException, CFileException );

Parameter

pFile

Ein Zeiger auf das CFile -Objekt, das ist die ultimative Quelle oder das Ziel der permanenten Daten.

nMode

Ein Flag, das angibt, ob Objekte aus geladen oder in das Archiv gespeichert werden. NMode -Parameter muss einen der folgenden Werte haben:

nBufSize

Eine Ganzzahl, die die Größe des Puffers interne Datei in Bytes angibt. Beachten Sie, dass die Standard-Puffergröße 4096 Bytes ist. Wenn Sie regelmäßig große Objekte archivieren, werden Sie Leistung verbessern, wenn Sie eine größere Puffergröße verwenden, die ein Vielfaches der Größe der Puffer.

lpBuf

Ein optionaler Zeiger auf einen Benutzer bereitgestellten Puffer der Größe nBufSize. Wenn Sie diesen Parameter nicht angeben, wird das Archiv, reserviert einen Puffer von lokalen Heap und gibt es frei, wenn das Objekt zerstört wird. Das Archiv frei einen Benutzer bereitgestellte Puffer nicht.

Bemerkungen

Erstellt ein CArchive -Objekt und gibt an, ob es für das Laden und Speichern von Objekten verwendet werden. Sie können diese Spezifikation nicht ändern, nachdem Sie das Archiv erstellt haben.

Sie können nicht CFile Vorgänge verwenden, um den Status der Datei zu ändern, bis Sie das Archiv geschlossen haben. Eine solche Operation wird die Integrität des Archivs beschädigt. Sie können die Position des Dateizeigers jederzeit während der Serialisierung durch Abrufen der Archiv-Datei-Objekt aus der GetFile -Memberfunktion und dann mithilfe der CFile::GetPosition -Funktion zugreifen. Sie sollten CArchive::Flush aufrufen, bevor Sie die Position des Dateizeigers abrufen.

Beispiel

extern Char * pFileName;
CFile f;
Char Buf [512];
Wenn (! f.Open (pFileName, modeCreate | CFile::modeWrite)) {}
 Nbsp; # ifdef _DEBUG
      AfxDump << "Unable to open File" << "\n";
      Ausfahrt (1);
   # endif
}
CArchive Ar (& f, CArchive::store, 512, Buf);

Übersicht über die CArchiveMember der Klasse | Hierarchiediagramm

Siehe auch&Nbsp;CArchive::Close, CArchive::Flush, CFile::Close

Index