Не получается создать копирование из файла в другой fstream

Пытаюсь сделать копирование из одного файла, в другой.

void CopyFileUsingClasses(string origFileName, string copyFileName)
{
    fstream ifs(origFileName, ios::in);
    fstream ofs(copyFileName, ios::out);
}

Копирование не происходит.


Ответы (1 шт):

Автор решения: Harry

Ну, если вы не хотите использовать новые возможности <filesystem>, то можно дописать цикл чтения из одного файла и записи во второй. Да, и открывайте файлы как бинарные:

void CopyFileUsingClasses(const string& origFileName, const string& copyFileName)
{
    fstream ifs(origFileName, ios::in|ios::binary);
    fstream ofs(copyFileName, ios::out|ios::binary);
    const int sz = 64536;
    char buf[sz];
    for(;;)
    {
        ifs.read(buf,sz);
        if (ifs.gcount() == 0) break;
        ofs.write(buf,ifs.gcount());
    }
}

Простите уж, но то, что пытались сделать вы - это как та недалекая тетя, которой дали набрать текст, но все, что она сделала - это положила его на клавиатуру и думала, что этого достаточно...

→ Ссылка