Qt - копировать файл из одного каталога в другой

Я использую QT, я не могу узнать, как скопировать файл из одного каталога в другой? Как я могу достичь этого?

Ответ 1

Вы можете использовать QFile, который предоставляет метод копирования.

QFile::copy("/path/file", "/path/copy-of-file");

Ответ 2

Следующий код работает в окнах. В режиме пользовательского интерфейса.

void MainWindow::on_pushButton_2_clicked()
{
    QString str5 = ui->lineEdit->text();
    QString src = "."; QString setpath;
    QDir dir(src);
    if(!dir.exists()){
        return;
    }
    dir.cdUp();
    //dir.cdUp();
    setpath = "E://";
    dir.setPath(setpath);
    QString dst_path = str5 + QDir::separator() ;
    dir.mkpath(dst_path);
    dir.cd(dst_path);
    QString filename = "gnu.plt";
    QString filename2 = "Load curve.plt";
    QString filename3 = "tube temp.plt";
    QFile file(filename);
    QFile file1(filename2);
    QFile file2(filename3);
    file.copy(src+QDir::separator()+filename, setpath+QDir::separator()+str5+QDir::separator()+filename);
    file1.copy(src+QDir::separator()+filename2, setpath+QDir::separator()+str5+QDir::separator()+filename2);
    file2.copy(src+QDir::separator()+filename3, setpath+QDir::separator()+str5+QDir::separator()+filename3);
}