開啟檔案
在 MFC 中,開啟檔案的最常見的方式是兩階段的程序。
開啟檔案
建立檔案物件,而不指定路徑或使用權限旗標。
您通常藉由在堆疊框架宣告 CFile 變數建立檔案物件。
對檔案物件呼叫 Open 成員函式,提供路徑和使用權限旗標。
如果已成功開啟檔案,Open 的傳回值會是非零,或 0 如果無法開啟指定的檔案。 Open 成員函式原型如下:
virtual BOOL Open( LPCTSTR lpszFileName, UINT nOpenFlags, CFileException* pError = NULL );
開啟旗標指定您想要檔案的使用權限,例如唯讀。 可能的旗標值定義在 CFile 類別中的列舉常數,使其符合"CFile::" 如 CFile::modeRead。 如果您要建立檔案,請使用 CFile::modeCreate 旗標。
下列範例顯示如何建立具有讀取/寫入權限的新檔案 (取代任何之前具有相同路徑的檔案):
TCHAR* pszFileName = _T("c:\\test\\myfile.dat");
CFile myFile;
CFileException fileException;
if ( !myFile.Open( pszFileName, CFile::modeCreate |
CFile::modeReadWrite, &fileException ) )
{
TRACE( _T("Can't open file %s, error = %u\n"),
pszFileName, fileException.m_cause );
}
注意事項 |
---|
這個範例會建立並開啟檔案。如果有問題, Open 可能會呼叫在它的最後一個參數的 CFileException 物件,如下所示。TRACE 巨集列印表示失敗的檔案名稱和程式碼原因。如果您需要更詳細的錯誤報告,您可以呼叫 AfxThrowFileException 函式。 |