Qt5利用QProcess执行cmd命令
把文件从一个目录移动到另一个目录,即执行cmd里的copy命令:
copy 原文件 目标位置
代码
需要在头文件中加入 #include<QProcess>
void MainWindow::on_ptn_clicked()
{
QProcess p(0);
//这个会报错 p.start("copy C:\\Users\\Administrator\\Desktop\\lala.jpg C:\\Users\\Administrator\\Desktop\\aaa");
QString targetpath=QApplication::applicationDirPath();
targetpath.remove(QRegularExpression("debug"));//为了调用photoa文件
targetpath=targetpath+"photoa";//目的路径
//构造命令
QString sourcepath="C:/Users/Administrator/Desktop/lala.jpg ";//源路径
QString command=QString("copy ")+sourcepath+targetpath;
command=command.replace("/","\\");
qDebug()<<"命令是:"<<command<<endl;
//这个可以执行成功
p.start("cmd", QStringList()<<"/c"<<command);
p.waitForFinished();
QString strTemp=QString::fromLocal8Bit(p.readAllStandardOutput());
qDebug()<<strTemp;
}
运行前
运行程序(点击按钮就开始复制,按钮名字是随便写的,没注意含义与功能对称)
运行结束