データを送信・受信するコードの書き方

Qtではデータをやり取りするためにQTcpSocketクラスを使用します。簡単な例を以下に示します。

データを送信する

QTcpSocket *socket = new QTcpSocket(this);
socket->connectToHost("localhost", 1234); // 连接到服务器的IP地址和端口号

if(socket->waitForConnected())
{
    QByteArray data = "Hello, server!";
    socket->write(data); // 发送数据
}

データを受信する

QTcpSocket *socket = new QTcpSocket(this);
socket->connectToHost("localhost", 1234); // 连接到服务器的IP地址和端口号

if(socket->waitForConnected())
{
    if(socket->waitForReadyRead())
    {
        QByteArray data = socket->readAll(); // 读取接收到的数据
        qDebug() << "Received data: " << data;
    }
}

上記のコードでは、connectToHost() 関数がサーバーの IP アドレスとポート番号への接続に使用され、waitForConnected() 関数がサーバーとの接続の確立を待ち、write() 関数がデータ送信に使用され、waitForReadyRead() 関数がサーバーからの送信データが読み取り可能な状態になるのを待ち、readAll() 関数は受信したデータを読み取ります。

実際の使用においては、エラー処理や切断などのロジックを追加する必要があることにご注意ください。

bannerAds