Read 从文件的当前位置读数据  
Write 将文件数据写入当前文件位置  
为何同样的数据,两个函数差这么长时间。有没有办法解决这个问题。

解决方案 »

  1.   

    你的Read和write语句具体怎么写的?
      

  2.   

    BOOL CFileOperation::WriteFileData(Error_Info* sWrite)
    {
    DWORD dwTypeSize = sizeof(Error_Info);
    m_File.SeekToEnd();  
       m_File.Write(sWrite,dwTypeSize);
               m_File.Flush();
    return true; 
    }BOOL CFileOperation::ReadFileData(Error_Info* sRead,DWORD& dwTypeSum )
    {
    DWORD dwTypeSize = sizeof(Error_Info);

           m_File.SeekToBegin();
       DWORD dwSize;
       dwTypeSum = 0;
       do{
       dwSize = m_File.Read(&sRead[dwTypeSum],dwTypeSize);
       dwTypeSum++;
       }while(dwSize==dwTypeSize);
          return true; 
    }
      

  3.   

    WriteFileData(Error_Info* sWrite) 每写一条,调用一次。必须如此,因为信息实时的。ReadFileData(Error_Info* sRead,DWORD& dwTypeSum )一次读出所有信息。查看历史的时候用。
      

  4.   

    我是为了测试速度,做了一个8M读写的测试,结果就是这样了。虽然现实中这样的情况可能不会出现,可我还是想尽可能的提高速度。
    另外,我看很多程序读写大文件,比如暴风影音,并没有占用很多内存。而我读数据的时候就要new出一个很大的内存空间,这个有没有解决法。
      

  5.   

    http://baike.baidu.com/view/394293.htm?fr=ala0