CFile fp ;CFile fp2;
//这时候fp已经打开了一个文件   想用 fp2读取第二个文件的数据再复制到第一个文件中。这样做有错吗?   
while(j=fp2.Read(&lw_new,sizeof(lunwen)))
{


fp.SeekToEnd();
fp.Write(&lw_new,sizeof(lunwen));
     
}
能通过  但没什么用好像一点都不反应。

解决方案 »

  1.   

    CFile fp1,ftp2;
    fp1.Open(file1,CFile::modeReadWrite);
    fp2.Open(file2,CFile::modeRead);
    int j = 0;
    char lw_new[128] = {0}
    fp1.SeekToEnd();
    while (j = fp2.read(lw_new,128))
    {
    fp1.write(lw_new,j);//可能这里j大于lw_new的容量
    }
    fp1.close();//可能没关闭文件
    fp2.close();
      

  2.   


    CFile fileRead;
    CFile fileWrite;
    if (!fileRead.Open(TEXT("C:\\1.txt"), CFile::modeRead | CFile::modeNoTruncate | CFile::modeCreate))
    {
    return;
    }
    if (!fileWrite.Open(TEXT("C:\\2.txt"), CFile::modeWrite | CFile::modeNoTruncate | CFile::modeCreate))
    {
    fileRead.Close();
    return;
    }
    fileWrite.SeekToEnd(); UINT nRead = 0;
    char szBuf[100]; 
    while ((nRead = fileRead.Read(szBuf, sizeof(szBuf))) > 0)
    {
    fileWrite.Write(szBuf, nRead);
    }
    fileWrite.Flush();
    fileRead.Close();
    fileWrite.Close();
    return;