我正在尝试使用名为 copyProcess 的QProcess
将多个文件复制到Qt 4.8中的目标文件夹。问题是,当我使用此命令时,没有任何反应,在cmd中,它显示无效的语法。
我从StringList
得到的值是这个
for%I in(", " C:/Users/xyz.mp4"," C:/Users/V46.srt"," C:/Users/FP.txt",&# 34;)","复制 %I"," C:\ Users \ Nina \ Desktop \ New folder(9)")
d->copyProcess = new QProcess(this) ;
QStringList copyProcessParameters;
// copyProcessParameters.append("-rf");
Q_FOREACH(QString fileName, fileNames)
{
d->totalFileSize += this->getSize(fileName);
d->filesToCopy.append(fileName);
}
copyProcessParameters.append(d->filesToCopy);
copyProcessParameters.append("do copy %I");
copyProcessParameters.append(destinationDir);
d->copyProcess->start("for %I in", copyProcessParameters);
那么有没有办法可以在qt中使用批处理脚本,它可以一次复制多个文件?
答案 0 :(得分:0)
使用QT可能会给您更多灵活性。但是如果你想要并发副本,你可以使用START
。当然,将NUL
的目的地更改为您的目录。
for %I in ("C:\Users\xyz.mp4" "C:\Users\V46.srt" "C:\Users\FP.txt") do (start /MIN cmd.exe /C COPY "%~I" NUL)
此外,如果进入.bat脚本,请将变量上的%
个字符翻倍。