1

たとえば、このコマンドの出力を取得したい:

system("dir C:\");

またはの :

QProcess::execute("cmd /c dir C:\");

どうやってするか ?

ありがとう !

4

2 に答える 2

5
QProcess process;
process.start("cmd /c dir C:\\");
process.waitForFinished(-1);
QByteArray out = process.readAllStandardOutput();
于 2012-10-04T14:48:39.580 に答える
1

標準の出力パスを変更して、そこから読み取るパイプにすることができますが、popen()の代わりに使用する方が簡単ですsystem()

Windowsを使用しているように見えるので、を使用します_popen()

#include <stdio.h>

....

FILE *fp = _popen("dir c:\", "r");
....
while (!feof(fp)) {
    ....
}
fclose(fp);
于 2012-10-02T19:29:59.893 に答える