2010-11-26 111 views
0

如何从一个文本文件复制到另一个文本文件? 这里我目前的进展..它只是复制源文件:(最后一行将文本文件内容复制到另一个文本文件

 ifstream stream1("c:\\source.txt"); 

     char a[512]; 


     while(!stream1.eof()) 

     { 
      stream1 >> a; 
     } 


    ofstream myfile; 
    myfile.open ("c:\\destination.txt"); 
    myfile << a; 
    myfile.close(); 

回答

4

简单的解决方案:

ifstream stream1("C:/source.txt"); 
ofstream stream2("C:/target.txt"); 
stream2 << stream1.rdbuf(); 
1

这背后的原因是a是一个字符数组,而不是流。所以每次循环你写的。在内存中同一位置(不追加代替)

你可以只在开始创建ofstream对象,从流写入到流:

#include <fstream> 

void main() 
{ 
    std::ifstream stream1("C:\\source.txt"); 
    std::ofstream stream2("C:\\target.txt"); 

    while(!stream1.eof()) 
     stream2 << stream1; 

    stream1.close(); 
    stream2.close(); 
} 
+0

这个需要什么特定的头文件?我编译它,但错误.. – karikari 2010-11-26 10:41:15

相关问题