qt發(fā)送數(shù)據(jù)與接收數(shù)據(jù)代碼怎么寫

qt
小億
259
2023-11-10 20:05:18
欄目: 編程語言

在Qt中,可以使用QTcpSocket類來發(fā)送和接收數(shù)據(jù)。以下是一個(gè)簡(jiǎn)單的例子:

發(fā)送數(shù)據(jù):

QTcpSocket *socket = new QTcpSocket(this);
socket->connectToHost("localhost", 1234); // 連接到服務(wù)器的IP地址和端口號(hào)

if(socket->waitForConnected())
{
    QByteArray data = "Hello, server!";
    socket->write(data); // 發(fā)送數(shù)據(jù)
}

接收數(shù)據(jù):

QTcpSocket *socket = new QTcpSocket(this);
socket->connectToHost("localhost", 1234); // 連接到服務(wù)器的IP地址和端口號(hào)

if(socket->waitForConnected())
{
    if(socket->waitForReadyRead())
    {
        QByteArray data = socket->readAll(); // 讀取接收到的數(shù)據(jù)
        qDebug() << "Received data: " << data;
    }
}

以上代碼中,connectToHost()函數(shù)用于連接到服務(wù)器的IP地址和端口號(hào),waitForConnected()函數(shù)用于等待和服務(wù)器建立連接,write()函數(shù)用于發(fā)送數(shù)據(jù),waitForReadyRead()函數(shù)用于等待服務(wù)器發(fā)送的數(shù)據(jù)可讀,readAll()函數(shù)用于讀取接收到的數(shù)據(jù)。

請(qǐng)注意,以上代碼僅為示例,實(shí)際使用時(shí)可能需要添加錯(cuò)誤處理、斷開連接等邏輯。

0