我想得到这个命令的输出,例如:
system("dir C:\");
或:
QProcess::execute("cmd /c dir C:\");
怎么做 ?
谢谢 !
QProcess process;
process.start("cmd /c dir C:\\");
process.waitForFinished(-1);
QByteArray out = process.readAllStandardOutput();
您可以将标准输出路径修改为从中读取的管道,但它会更容易使用popen()
而不是system()
.
由于您似乎使用的是 Windows,因此您将使用_popen()
.
#include <stdio.h>
....
FILE *fp = _popen("dir c:\", "r");
....
while (!feof(fp)) {
....
}
fclose(fp);