读取和写入文件

如果使用了 C 运行库文件处理的函数,则 MFC 读取和写入操作会显得很熟悉。 本文介绍读取直接从和写入直接对 CFile 对象。 您也可以使用 CArchive 类的缓冲区的文件 I/O。

读取和写入文件

  1. 使用 读取写入 成员函数读取和在文件中写入数据。

    - 或 -

  2. Seek 成员函数用于移动也可用移到文件中的特定偏移量。

读取 采用指向缓冲区和字节数读取并返回读取的实际字节数。 如果所需的字节数无法阅读,因为文件结束 (EOF)为止,读取的实际字节数返回。 如果任何读取错误,将引发异常。 写入 类似于 读取,但是,编写的字节数没有返回。 如果编写错误,包括不写入指定的所有字节,将引发异常。 如果您拥有有效的 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)

请参见

概念

MFC中的文件