首页 > 代码库 > qt tcp 通信实例
qt tcp 通信实例
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QHostAddress>#include <QMessageBox>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); this->socket = new QTcpSocket(this);}void MainWindow::on_pushButton_2_clicked(){ this->socket->close();}void MainWindow::on_pushButton_clicked(){ this->socket->connectToHost("127.0.0.1",80000,QTcpSocket::ReadWrite); connect(this->socket,SIGNAL(connected()),this,SLOT(connected()));}void MainWindow::connected(){ QMessageBox::about(this,"notice","connect successful"); connect(this->socket,SIGNAL(readyRead()),this,SLOT(readyread()));}void MainWindow::readyread(){ QMessageBox::about(this,"notice","ready read"); QByteArray arr = this->socket->readAll(); QDataStream *des = new QDataStream(&arr,QIODevice::ReadOnly);//重点 QString str1; QString str2; (*des)>>str1>>str2; qDebug()<<str1+str2; QMessageBox::about(this,"x",str1+str2);}MainWindow::~MainWindow(){ delete ui;}
服务端
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QTcpServer>#include <QTcpSocket>#include <QMessageBox>#include <QByteArray>#include <QString>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); this->socket = nullptr; this->server = new QTcpServer(this); this->server->listen(QHostAddress::Any,80000); QObject::connect(this->server,SIGNAL(newConnection()),this,SLOT(newConnect()));}void MainWindow::newConnect(){ this->socket = this->server->nextPendingConnection(); QMessageBox::about(this,"notice","new connect"); connect(this->socket,SIGNAL(readyRead()),this,SLOT(ReceiveData()));}void MainWindow::ReceiveData(){ QByteArray arr = this->socket->readAll(); QDataStream dst(arr); QString str1; QString str2; dst>>str1>>str2; qDebug()<<str1<<str2;}void MainWindow::on_pushButton_clicked(){ QString str = this->ui->lineEdit->text(); QByteArray arr; QDataStream dst(&arr,QIODevice::ReadWrite); dst<<QString("message:")<<str; this->socket->write(arr);}void MainWindow::on_pushButton_2_clicked(){ this->socket->close();}MainWindow::~MainWindow(){ delete ui;}
qt tcp 通信实例
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。