輸出到控制檯:
#include <iostream>
#include <stdio.h>
void MainWindow::writeTo()
{
QFile fileout;
fileout.open(stdout, QIODevice::WriteOnly);
fileout.write(ui->lineEdit->text().toLatin1().constData(), ui->lineEdit->text().length()); // write to std
fileout.close();
}
接收程序輸出:
#include <QProcess>
private:
QProcess *pro;
private slots:
void readoutput();
pro = new QProcess(this);
// connect(pro, SIGNAL(finished(int,QProcess::ExitStatus)), this, SLOT(processFinished(int, QProcess::ExitStatus)));
// connect(pro, SIGNAL(error(QProcess::ProcessError)), this, SLOT(processError(QProcess::ProcessError)));
connect(pro, SIGNAL(readyRead()), this, SLOT(readoutput()));
pro->start("./QProcess_client.exe");
//QProcess::execute() 啓動一個進程,然後等待該進程結束。
//QProcess::startDetached() 啓動一個進程,然後使其和當前進程脫離進程的父子關係。
pro->waitForStarted();
//server端接收數據
void MainWindow::readoutput()
{
if( !pro) return;
QString temp = pro->readAll();
ui->label->setText(temp);
}