讀取和寫入檔案
如果您已使用 C 執行時間程式庫檔案處理函式,MFC 讀取和寫入作業看起來會很熟悉。 本文說明直接從 物件讀取和寫入 CFile
物件。 您也可以使用 CArchive 類別執行緩衝處理檔案 I/O。
讀取和寫入檔案
Read
使用 和Write
成員函式來讀取和寫入檔案中的資料。-或-
成員
Seek
函式也可用於移至檔案內的特定位移。
Read
會取得緩衝區的指標,以及要讀取的位元組數目,並傳回已讀取的實際位元組數目。 如果無法讀取所需的位元組數目,因為到達檔案結尾(EOF),則會傳回實際讀取的位元組數目。 如果發生任何讀取錯誤,則會擲回例外狀況。 Write
類似于 Read
,但不會傳回寫入的位元組數目。 如果發生寫入錯誤,包括未寫入指定的所有位元組,則會擲回例外狀況。 如果您有有效的 CFile
物件,您可以從它讀取或寫入它,如下列範例所示:
TCHAR szBuffer[256];
UINT nActual = 0;
CFile myFile;
if ( myFile.Open( _T("c:\\test\\myfile.dat"), CFile::modeCreate |
CFile::modeReadWrite ) )
{
myFile.Write( szBuffer, sizeof( szBuffer ) );
myFile.Flush();
myFile.Seek( 0, CFile::begin );
nActual = myFile.Read( szBuffer, sizeof( szBuffer ) );
}
注意
您通常會在例外狀況處理區塊內 try
/ catch
執行輸入/輸出作業。 如需詳細資訊,請參閱 例外狀況處理(MFC)。