Sdílet prostřednictvím


CArchive::CArchive

Konstrukce CArchive objektu a určuje, zda budou použity pro načítání nebo ukládání objektů.

CArchive( 
   CFile* pFile, 
   UINT nMode, 
   int nBufSize = 4096, 
   void* lpBuf = NULL  
);

Parametry

  • pFile
    Ukazatel CFile objekt, který je ultimate zdroj nebo cíl trvalá data.

  • nMode
    Příznak, který určuje, zda budou objekty načten z nebo uložena do archivu. nMode Parametr musí mít některou z následujících hodnot:

    • CArchive::load načte data z archivu.Vyžaduje pouze CFile oprávnění ke čtení.

    • CArchive::store uloží data do archivu.Vyžaduje CFile oprávnění zapisovat.

    • CArchive::bNoFlushOnDelete archivu brání volání automaticky Flush při se nazývá destruktoru archivu.Pokud tento příznak, zodpovídáte za explicitně voláním Zavřít před se nazývá se objekt.Pokud neprovedete, budou data poškozena.

  • nBufSize
    Celé číslo, které určuje velikost vyrovnávací paměti interní souboru v bajtech.Poznámka: výchozí velikost vyrovnávací paměti je 4 096 bajtů.Pokud pravidelně archivujete velké objekty, se zvýší výkon, pokud použijete větší velikost vyrovnávací paměti, která je násobkem velikosti vyrovnávací paměti souboru.

  • lpBuf
    Volitelné ukazatele na uživatelský vyrovnávací paměť o velikosti nBufSize .Pokud tento parametr nezadáte, přiděluje vyrovnávací paměť z haldy místní archivu a uvolní ji při zničení objektu.Archiv zdarma není uživatelem zadané vyrovnávací paměti.

Poznámky

Tato specifikace nelze změnit po vytvoření archivu.

Nelze použít CFile operací ke změně stavu souboru, dokud neukončíte archivu.Tato operace bude poškození integrity archivu.Pozice ukazatele souboru může kdykoli během serializace přístupu získáním objektu souboru archivu z GetFile členské funkce a potom pomocí CFile::GetPosition funkce.Volat CArchive::Flush před získáním pozici ukazatele souboru.

Příklad

CFile file;
TCHAR szBuf[512];
if( !file.Open(_T("CArchive__test__file.txt"), 
   CFile::modeCreate | CFile::modeWrite)) 
{
   #ifdef _DEBUG
     AFXDUMP(_T("Unable to open file\n"));
     exit(1);
   #endif
}
CArchive ar(&file, CArchive::store, 512, szBuf);

Požadavky

Záhlaví: afx.h

Viz také

Referenční dokumentace

Třída CArchive

Graf hierarchie

CArchive::Close

CArchive::Flush

CFile::Close