QT中TCP/UDP通信数据的组织

QT中TCP/UDP通信数据的组织


    //组装数据包
    QString msgType = "MSG_CLIENT_NEW_CONN";
    QByteArray block;
    QDataStream out(&block, QIODevice::WriteOnly);
    out.setVersion(QDataStream::Qt_4_6);
    QString xxx;
    QString yyy;
    QString zzz;
    out << (quint16)0 << msgType << xxx << yyy << zzz;
    out.device()->seek(0);
    out << (quint16)(block.size() - sizeof(quint16));
    udpSocket->writeDatagram(block.data(), block.size(), QHostAddress(ip), (quint16)port);


    //读取数据包
    QByteArray block;
    block.resize(udpSocket->pendingDatagramSize());
    if ( -1 == udpSocket->readDatagram(block.data(), block.size(), &senderIp, &senderPort))
            continue;
    QDataStream in(&block,QIODevice::ReadOnly);
    quint16 dataGramSize;
    QString msgType; 
    in >> dataGramSize >> msgType;
    if ( "MSG_CLIENT_NEW_CONN" == msgType )
    {
       QString xxx;
       QString yyy;
       QString zzz;
       in >> xxx >> yyy >> zzz;

    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TCP/UDP调试助手是一种基于Qt编写的软件工具,用于帮助开发人员在进行TCP/UDP通信调试时进行数据的发送和接收。 首先,该调试助手提供了一个用户友好的界面,方便开发人员进行操作。通过该界面,用户可以设置本地主机的IP地址和端口号,选择是进行TCP还是UDP通信,以及连接到的远程主机的IP地址和端口号。 其次,该调试助手允许用户发送自定义的数据包给远程主机。用户可以在发送数据的区域输入想要发送的数据内容,并且可以选择发送的数据类型(比如字符串、十六进制等)。一旦用户点击发送按钮,调试助手将会将数据包发送到远程主机。 第三,该调试助手还可以实时显示接收到的数据。用户可以通过接收区域数据显示窗口,清晰地看到从远程主机接收到的数据内容。这对于开发人员来说非常重要,因为它可以帮助他们检查是否已发送和接收到正确的数据。 此外,该调试助手还允许用户进行一些高级设置。例如,用户可以选择启用循环发送功能以重复发送相同的数据包,还可以设置发送间隔时间以模拟实际应用场景。 总结而言,Qt编写的TCP/UDP调试助手为开发人员提供了一个方便和直观的工具,旨在帮助他们在TCP/UDP通信调试过程更加高效地发送和接收数据。通过使用该助手,开发人员可以轻松地检查通信是否正常,并解决可能出现的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值