小弟有一个写文件的程序,用的CFile类,每隔一定时间一条记录,执行一段时间后结束,发现应该写在最后的1~2条记录写到了记录头上,把原先的记录覆盖了,求解释

解决方案 »

  1.   

    把写文件的当前指针设置到文件最后
    f.Seek(0,CFile::end);
    再写
      

  2.   

    嗯,写入方式问题,自己去看看MSDN里面对写入函数中参数的具体解释,看懂了就可以随便操作了
      

  3.   

    把写文件的当前指针设置到文件最后示例:
    // example for CFile::SeekToEnd
    extern CFile cfile;
    DWORD dwActual = cfile.SeekToEnd( );再写
      

  4.   

    设置追加模式CFile是MFC中的一个类,可以方便的读写文件。如果读写一行的话建议使用CStdioFile类的ReadString()和WriteString()。这些类要实现追加的方式写文件的话。要设定参数和文件指针的位置。具体方法如下:CFile myfile; if(!myfile.Open(Filename,CFile::modeNoTruncate|CFile::modeWrite)==NULL){AfxMessageBox("can not open the file");}myfile.SeekToEnd();
    //这是就可以往里写了。myfile.Write(&data,size);
      

  5.   

    SeekToEnd( );正解!创建文件时以什么形式打开的?