MFC文件操作

第二步 读写文件操作:    

  (1) 文件类        CFile

  (2) 构造方法       CFile::CFile();

  CFile::CFile( LPCTSTR lpszFileName, UINT nOpenFlags );

  lpszFileName      文件名

  nOpenFlags        打开方式,有:

              CFile::modeCreate:以新建方式打开,如果文件不存在,新建;

                         如果文件已存在,把该文件长度置零,即清除文件原有内容。

              CFile::modeRead:只读。
              CFile::modeWrite:只写。
              CFile::modeReadWrite:以读写方式打开文件。

              CFile::modeNoTruncate:以追加方式打开,如果文件存在,打开并且不将文件长度置零,如果文件不存在,会抛出异常。

                            一般与CFile::modeCreate一起使用,则文件不存在时,新建一个文件;存在就进行追加操作。

  用例如下:

    CFile ReadFile(gReadFilePathName,CFile::modeRead);

    CFile SaveFile(gSaveFilePathName,CFile::modeCreate|CFile::modeWrite);

  (3) 只读方法      CFile::Read();

  CFile::Read( void* lpBuf, UINT nCount );   从lpBuf指向的地址开始读取nCount 个字节,指针也自动下移nCount .

  lpBuf          文件指针

  nCount          字节数

  用例如下:

    unsigned char temp;

    ReadFile.Read(&temp,1);

  (4) 只写方法      CFile::Write();

  CFile::Write( const void* lpBuf, UINT nCount );   向lpBuf指向的内存地址写入nCount 个字节,指针也自动下移nCount .

  lpBuf          文件指针

  nCount          字节数

  用例如下:

     char ChangRun[2] = {'\r','\n'};

    SaveFile.Write(ChangRun,2);

  (5) 定位方法      CFile::Seek();

  CFile::Seek( LONG lOff, UINT nFrom );    从指定位nFrom置偏移lOff字节.

  nFrom          有三种方式,如:

               CFile::begin     从文件开始移动

               CFile::current    从当前位置移动

               CFile::end      从文件末位移动,此时lOff为负值.

  用例如下:

    SaveFile.Seek(2,CFile::current);


完。

原文地址:https://www.cnblogs.com/shinecox/p/3131191.html