Копировать содержимое текстового файла в другой текстовый файл - PullRequest
0 голосов
/ 26 ноября 2010

Как скопировать из одного текстового файла в другой текстовый файл?Вот мой текущий прогресс .. просто скопируйте последнюю строку исходного файла: (

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

        char a[512];


        while(!stream1.eof())

        {
          stream1 >> a;
        }


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

Ответы [ 2 ]

4 голосов
/ 26 ноября 2010

Простое решение:

ifstream stream1("C:/source.txt");
ofstream stream2("C:/target.txt");
stream2 << stream1.rdbuf();
1 голос
/ 26 ноября 2010

Причина этого в том, что 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();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...