Partager via


CArchive, classe

Vous permet d'enregistrer un réseau complexe des objets dans un formulaire binaire permanente (généralement stockage disque) qui rend une fois ces objets sont supprimés.

class CArchive

Membres

Constructeurs publics

Nom

Description

CArchive::CArchive

Crée un objet CArchive.

Méthodes publiques

Nom

Description

CArchive::Abort

Ferme une archive sans lever une exception.

CArchive::Close

Vide des données et des déconnectez -vous pas écrits d' CFile.

CArchive::Flush

Vide des données non entrées de la mémoire tampon d'archivage.

CArchive::GetFile

Obtient le pointeur d'objet d' CFile pour cette archive.

CArchive::GetObjectSchema

Appel de la fonction d' Serialize pour déterminer la version de l'objet qui est désérialisé.

CArchive::IsBufferEmpty

Détermine si la mémoire tampon a été vidée lors de Windows Sockets acceptent le processus.

CArchive::IsLoading

Détermine si l'archive charge.

CArchive::IsStoring

Détermine si l'archive enregistrées.

CArchive::MapObject

Définit les objets de la carte qui ne sont pas sérialisés au fichier, mais qui sont disponibles pour les sous-objets référence.

CArchive::Read

Lit les octets bruts.

CArchive::ReadClass

Lit une référence de classe précédemment enregistrée avec WriteClass.

CArchive::ReadObject

Appelle la fonction d' Serialize d'un objet pour charger.

CArchive::ReadString

Lit une ligne de texte.

CArchive::SerializeClass

Lit ou écrit la référence de classe à l'objet d' CArchive selon la direction d' CArchive.

CArchive::SetLoadParams

Définit la taille à laquelle le tableau de charge augmente. Doit être appelé avant tout objet soit chargé ou avant MapObject ou ReadObject est appelé.

CArchive::SetObjectSchema

Définit le schéma d'objet stocké dans l'objet archive.

CArchive::SetStoreParams

Définit la taille de table de hachage et la taille des blocs de mappage utilisée pour identifier de seuls objets pendant le processus de sérialisation.

CArchive::Write

Écrit des octets bruts.

CArchive::WriteClass

Écrit une référence à CRuntimeClass à CArchive.

CArchive::WriteObject

Appelle la fonction d' Serialize d'un objet pour stocker.

CArchive::WriteString

Écrit une ligne de texte.

Opérateurs publics

Nom

Description

CArchive::operator <<

Objets et types primitifs de mémoire à l'archivage.

CArchive::operator >>

Objets et types primitifs de chargement de l'archive.

Données membres publiques

Nom

Description

CArchive::m_pDocument

Notes

CArchive n'a pas de classe de base.

Plus loin vous pouvez charger les objets de stockage permanent, les reconstituant dans la mémoire. Ce processus de rendre les données persistantes est appelé « sérialisation. »

Vous pouvez considérer un objet archive comme type de flux binaire. Comme un flux d'entrée/sortie, une archive est associée à un fichier et permet l'écriture et la lecture des données mises en mémoire tampon vers et à partir de la mémoire. Les séquences de processus à partir d'un flux d'entrée/sortie de caractères ASCII, mais une archive traite des données binaires d'objet dans un format efficace et nonredundant.

Vous devez créer un objet de fichier C avant de pouvoir créer un objet d' CArchive . De plus, vous devez vérifier que le mode de chargement/mémoire de l'archive est compatible avec le mode ouverture du fichier. Vous êtes limité à une archive active par fichier.

Lorsque vous construisez un objet d' CArchive , vous le liez à un objet de la classe CFile (ou une classe dérivée) qui représente un fichier ouvert. Vous spécifiez également si l'archive sera utilisée pour charger ou enregistrer. Un objet d' CArchive peut traiter non seulement des types primitifs mais également des objets de CObject- classes dérivées conçues pour la sérialisation. Une classe sérialisable a généralement une fonction membre d' Serialize , et elle utilise généralement les macros de DECLARE_SERIAL et d' IMPLEMENT_SERIAL , comme décrit dans la classe CObject.

L'extraction surchargée (>>) et ()**<<**les opérateurs d'insertion sont des interfaces de programmation pratiques d'archivage qui prennent en charge les types primitifs et CObject- classes dérivées.

CArchive prend également en charge la programmation avec les classes CSocket et CSocketFilede MFC Windows Sockets. Prend en charge de fonction membre d' IsBufferEmpty qui utilisent.

Pour plus d'informations sur CArchive, consultez les articles sérialisation et Windows Sockets : Utilisation des sockets avec des archives.

Hiérarchie d'héritage

CArchive

Configuration requise

Header: afx.h

Voir aussi

Référence

Graphique de la hiérarchie

CFile, classe

CObject, classe

CSocket, classe

CSocketFile, classe