Sdílet prostřednictvím


CFile::CFile

Konstrukce a inicializuje CFile objektu.

CFile( );
CFile(
   CAtlTransactionManager* pTM
);
CFile(
   HANDLE hFile 
);
CFile(
   LPCTSTR lpszFileName,
   UINT nOpenFlags 
);
CFile(
   LPCTSTR lpszFileName,
   UINT nOpenFlags,
   CAtlTransactionManager* pTM
);

Parametry

  • hFile
    Popisovač souboru připojit k CFile objektu.

  • lpszFileName
    Relativní nebo celou cestu k souboru CFile objektu.

  • nOpenFlags
    Bitovou kombinaci (OR) možnosti aplikace access soubor pro zadaný soubor.Možnosti v části poznámky.

  • pTM
    Ukazatel na objekt CAtlTransactionManager

Poznámky

V následujících pěti tabulkách seznam možností nOpenFlags parametr.

Zvolte pouze jednu z následujících možností režimu soubor aplikace access.Výchozí režim přístupu souboru je CFile::modeRead , který je jen pro čtení.

Value

Description

CFile::modeRead

Vyžaduje pouze přístup pro čtení.

CFile::modeWrite

Žádosti o zápis pouze.

CFile::modeReadWrite

Požadavky na čtení a zápis.

Zvolte jednu z následujících možností režimu znaků.

Value

Description

CFile::typeBinary

Nastaví binární režim (používané v pouze odvozené třídy).

CFile::typeText

Nastaví režim textu zvláštní zpracování pro přepravu return–linefeed páry (používané v pouze odvozené třídy).

CFile::typeUnicode

Nastaví režim Unicode (používané v pouze odvozené třídy).Při použití v konfiguraci Unicode text zapsána do souboru ve formátu Unicode.Žádné Kusovníku je zapsán do souboru.

Zvolte pouze jednu z následujících možností režimu sdílení souborů.Výchozí režim sdílení souboru je CFile::shareExclusive , které je označeno jako výhradní.

Value

Description

CFile::shareDenyNone

Žádná omezení sdílení.

CFile::shareDenyRead

Odepře přístup pro čtení pro všechny ostatní.

CFile::shareDenyWrite

Odepře přístup pro zápis do všech ostatních.

CFile::shareExclusive

Odepře přístup pro zápis a všem ostatním.

Vyberte první nebo obě následující možnosti režimu vytvoření souboru.Výchozí režim vytváření je CFile::modeNoTruncate , což je otevřít existující.

Value

Description

CFile::modeCreate

Vytvoří nový soubor, pokud neexistuje žádný soubor; jinak, pokud soubor již existuje, je připojen CFile objektu a zkrácen na délku 0.

CFile::modeNoTruncate

Vytvoří nový soubor, pokud neexistuje žádný soubor; jinak, pokud soubor již existuje, je připojen CFile objektu.

Zvolte možnosti ukládání do mezipaměti, jak je popsáno následující soubor.Ve výchozím nastavení používá systém pro všeobecné účely mezipaměti schématu, který není k dispozici možnost.

Value

Description

CFile::osNoBuffer

Systém nepoužívá zprostředkující mezipaměti souboru.Tato možnost zruší 2 následující možnosti.

CFile::osRandomAccess

Souborová mezipaměť je optimalizován pro náhodný přístup.Nepoužívejte tuto možnost a možnost průběžné kontroly.

CFile::osSequentialScan

Souborová mezipaměť je optimalizován pro sekvenční přístup.Nepoužívejte tuto možnost a možnost náhodný přístup.

CFile::osWriteThrough

Zápis operace jsou prováděny bez prodlení.

Zvolte zabezpečení možnost zabránit zděděna popisovač souboru.Ve výchozím nastavení můžete použít všechny nové podřízené procesy popisovač souboru.

Value

Description

CFile::modeNoInherit

Zabrání jakékoli podřízené procesy pomocí popisovače souboru.

Výchozí konstruktor inicializuje členy, ale nikoli připojit soubor CFile objektu.Po použití tohoto konstruktoru, použít CFile::Open metoda otevřít soubor a připojit ji k CFile objektu.

Konstruktor s jedním parametrem inicializuje členy a připojí k existující soubor CFile objektu.

Konstruktor dva parametry inicializuje členy a pokusí se otevřít zadaný soubor.Pokud tento konstruktor úspěšně otevře určený soubor, soubor je připojen k CFile objektu; jinak tento konstruktor vyvolá ukazatel CInvalidArgException objektu.Další informace o způsobu zpracování výjimek, viz výjimky.

Pokud CFile objekt úspěšně otevře určený soubor, bude uzavřen tento soubor automaticky při CFile objektu je zničeno; jinak je třeba výslovně zavřít soubor po je již připojen CFile objektu.

Příklad

V následujícím kódu jsou prokázáno všechny tři konstruktory.

HANDLE hFile = CreateFile(_T("CFile_File.dat"),
   GENERIC_WRITE, FILE_SHARE_READ,
   NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

if (hFile == INVALID_HANDLE_VALUE)
{
   AfxMessageBox(_T("Couldn't create the file!"));
}
else
{
   // Attach a CFile object to the handle we have.
   CFile myFile(hFile);

   static const TCHAR sz[] = _T("I love CFile!");

   // write string
   myFile.Write(sz, sizeof(sz));

   // We can call Close() explicitly, but the destructor would have
   // also closed the file for us. Note that there's no need to
   // call the CloseHandle() on the handle returned by the API because
   // MFC will close it for us.
   myFile.Close();

Požadavky

Záhlaví: afx.h

Viz také

Referenční dokumentace

Třída CFile

Diagram hierarchie