Klasa CArchive umożliwia zapamiętywanie obiektów, a następnie ich odczytanie z dysku. Proces ten nazwany został serializacją.
CArchive jest pewnego rodzaju binarnym strumieniem wejścia/wyjścia, który skojarzony jest z plikiem fizycznym za pomocą obiektu CFile.
Przed stworzenie obiektu CArchive musisz najpierw stworzyć obiekt CFile. W dodatku musisz określić takie same parametry dostępu do pliku w obiekcie CArchive, jak dla obiektu CFile.
Podczas tworzenia obiektu CArchive dołączany jest obiekt CFile, który reprezentuje fizyczny plik. Obiekt CArchive umożliwia serializację tylko obiektów, które dziedziczą po klasie CObiect. Aby móc dokonać serializacji klasy należy w jej definicji użyć następujących makr: DECLARE_SERIAL i IMPLEMENT_SERIAL.
| Atrybuty | Opis |
|---|---|
| m_pDocument | Wskaźnik na obiekt CDocument. |
| Metody | Opis |
|---|---|
| CArchive | Konstruktor obiektu CArchive. |
| Abort | Kończy proces serializacji bez względu na zaistniałe błędy. |
| Close | Zapisuje niezapisane dane i zrywa połączenie z obiektem CFile. |
| Flush | Zapisuje wszystkie niezapisane dane znajdujące się w buforze. |
| operator >> | Odczytuje podstawowe typy danych. |
| operator << | Zapisuje podstawowe typy danych. |
| Read | Odczytuje bajt. |
| Write | Zapisuje bajt. |
| WriteString | Zapisuje linię tekstu. |
| ReadString | Odczytuje linię tekstu. |
| GetFile | Zwraca wskaźnik do obiektu CFile. |
| IsLoading | Sprawdza czy dane mają być odczytywane. |
| IsStoring | Sprawdza czy dane mają być zapisane. |
| IsBufferEmpty | Sprawdza czy bufor jest pusty. |
| ReadObject | Wywołuje metodę serializacji dla obiektu w celu jego odczytania. |
| WriteObject | Wywołuje metodę serializacji dla obiektu w celu jego zapisania. |