CArchive ( CFile * pArchivo, UINT nMode, int nBufSize = 4096, void * lpBuf = NULL );
tirar ( CMemoryException, CArchiveException, CFileException );
Parámetros
pFile
Un puntero al objeto CFile que es la última fuente o el destino de los datos persistentes.
nMode
Un indicador que especifica si los objetos se cargado de o almacenados en el archivo. El parámetro nMode debe tener uno de los siguientes valores:
nBufSize
Un entero que especifica el tamaño del búfer interno de archivo, en bytes. Tenga en cuenta que el tamaño de búfer predeterminado es 4096 bytes. Si archiva sistemáticamente objetos grandes, se mejorará el rendimiento si utiliza un tamaño de búfer que es un múltiplo del tamaño de búfer de archivo.
lpBuf
Un facultativo puntero a un búfer de tamaño nBufSizesuministrado por el usuario. Si no se especifica este parámetro, el contenedor asigna un búfer del montón local y lo libera cuando se destruye el objeto. El archivo no liberar un búfer suministrado por el usuario.
Observaciones
Crea un objeto CArchive y especifica si se utilizará para cargar o almacenar objetos. Esta especificación no puede cambiar una vez creado el archivo.
No puede utilizar las operaciones CFile para alterar el estado del archivo hasta que cierre el archivo. Cualquier operación de esta clase dañar la integridad del archivo. Puede acceder a la posición del puntero del archivo en cualquier momento durante la serialización obtener objeto de archivo del archivo de la función de miembro GetFile y utilizando la función CFile::GetPosition . Debe llamar a CArchive::Flush antes de obtener la posición del puntero del archivo.
Ejemplo
extern char * pFileName;
CFile f;
Char buf [512];
Si (! f.Open (pFileName, CFile::modeCreate | {CFile::modeWrite))
nbsp; # ifdef _DEBUG
afxDump << "No se puede abrir el archivo" << "\n";
salir (1);
# endif
}
CArchive ar (& f, CArchive::store, 512, buf);
Visió&n General de CArchive |nbsp; Miembros de clase | Diagrama de jerarquía
Vea tambié&nnbsp;CArchive::Close, CArchive::Flush, CFile::Close