fp.Write(ctime,sizeof(char)*20);//先根据写入的次数Seek到对应的位置,再将一个char[20]的字符数组写入文件fp中,然后
fp.Read(sTime,sizeof(char)*(xierucishu)*20);//从文件fp中读取回来,sTime是一个二维数组,定义为如下格式sTime[xierucishu][20],也就是xierucishu表示写入到文件的次数,20表示每次写入二十个字符。
想请教,这样的写法正确吗?我怎么老是读取不回来写入的字符呢?急死我了

解决方案 »

  1.   

    写:
    extern CFile cfile;
    char pbuf[100];
    cfile.Write( pbuf, 100 );
    读:
    extern CFile cfile;
    char pbuf[100];
    UINT nBytesRead = cfile.Read( pbuf, 100 );
      

  2.   

    写的时候cwrite指针的位置要自己计算移动
      

  3.   

    fp.Seek(sizeof(char)*(xierucishu)*20 , CFile::begin);
    每次我Open文件以后都用这个函数去指定写入字符的位置。但是读取的时候就没有指定位置,从头开始读完(因为我约定xierucishu不大于10),也就是连续读完十个[20],不管实际有没有十个[20]在文件中。
      

  4.   

    但是,实际情况是读取不了字符,我的那种Read后,sTime还是为"",唉