QT------TCP通信协议

首先需要添加 QT+=network

其通信协议分为两部分:服务器与客户端

服务器:首先需要创建两个套接字,一个是监听套接字,一个是通信套接字

监听套接字:tcpserver

tcpserver->listen(QHostAddress::Any,8888);

进行listen监听操作

如果建立好连接,会触发newConnection(),这时需要取出建立好连接的套接字tcpsocket,其为通信套接字

    connect(tcpserver,&QTcpServer::newConnection,
            [=]()
            {
                //取出建立好连接的套接字
                tcpsocket = tcpserver->nextPendingConnection();

                //获取对方的IP和端口
                QString ip = tcpsocket->peerAddress().toString();
                qint16 port = tcpsocket->peerPort();
                QString temp = QString("[%1:%2]:成功连接").arg(ip).arg(port);

                ui->textEditRead->setText(temp);

                connect(tcpsocket,&QTcpSocket::readyRead,
                        [=]()
                        {
                            //从通信套接字中取出内容
                            QByteArray array = tcpsocket->readAll();

                            ui->textEditRead->append(array);
                        }

                        );

            }

            );

}
QT------TCP通信协议