我正在使用 QT,我不知道如何将文件从一个目录复制到另一个目录?我怎样才能做到这一点?
问问题
61584 次
3 回答
94
您可以使用提供复制方法的QFile 。
QFile::copy("/path/file", "/path/copy-of-file");
于 2013-11-12T11:47:07.813 回答
17
如果目标文件存在,QFile::copy
将不起作用。解决方案是验证目标文件是否存在,然后将其删除:
if (QFile::exists("/path/copy-of-file"))
{
QFile::remove("/path/copy-of-file");
}
QFile::copy("/path/file", "/path/copy-of-file");
于 2018-04-25T13:05:33.007 回答
-4
以下代码出于特定原因在 Windows 中工作。这将设置指定驱动器的路径并创建您在 UI 模式下创建的文件夹。然后将文件从源复制到目标。这里的源是安装目录,其中包含一些用于绘制曲线的文件。该文件不被用户修改。他们只是使用它。
因此这可以作为从安装目录到指定文件夹的副本
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);
}
于 2015-03-19T08:44:10.590 回答