C++ windows qt 读取命令行输出
时间: 2023-08-20 17:07:25 浏览: 173
在 Qt 中,可以使用 `QProcess` 类来执行命令行,并读取命令行输出。具体操作步骤如下:
1. 在代码中创建 `QProcess` 对象:
```cpp
QProcess process;
```
2. 设置命令行:
```cpp
process.setProgram("cmd.exe");
process.setArguments({"/c", "<your_command>"});
```
例如:
```cpp
process.setProgram("cmd.exe");
process.setArguments({"/c", "dir"});
```
3. 启动命令行并等待完成:
```cpp
process.start();
process.waitForFinished();
```
4. 读取命令行输出:
```cpp
QByteArray output = process.readAllStandardOutput();
```
如果要读取命令行错误输出,可以使用 `readAllStandardError()` 方法。
完整的代码示例:
```cpp
#include <QCoreApplication>
#include <QDebug>
#include <QProcess>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QProcess process;
process.setProgram("cmd.exe");
process.setArguments({"/c", "dir"});
process.start();
process.waitForFinished();
QByteArray output = process.readAllStandardOutput();
qDebug() << output;
return a.exec();
}
```
当执行该程序时,会在命令行中执行 `dir` 命令,并将输出打印到控制台。
阅读全文