QT中TCP/UDP通信数据的组织
2010-12-03 17:09
387 查看
//组装数据包
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;
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/furtherchan/archive/2010/05/11/5579978.aspx
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;
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/furtherchan/archive/2010/05/11/5579978.aspx
相关文章推荐
- QT中TCP/UDP通信数据的组织
- TCP与UDP的数据通信
- node.js-TCP与UDP的数据通信
- Qt开发:TCP和UDP网络通信
- 网络通信 TCP UDP 接收数据
- Qt TCP和UDP通信2
- Node.js权威指南 (7) - 实现基于TCP与UDP的数据通信
- QT 简单 TCP 通信,发送数据到服务器
- 孙其功陪你学之--QT界面程序经过网路与普通的linux应用程序进行数据传送的情况(UDP协议,非TCP协议):
- 解决Qt:TCP数据通信的中文乱码问题
- TCP/UDP通信编程在Qt中的实现方法
- [原][osg][osgEarth]基于qt代码实现:TCP|UDP与飞行模拟软件JSBSim的通信,现实模型飞行!
- UDP和TCP通信机制(实现简单的数据发送与接收)
- qt实现串口,UDP,TCP与嵌入式通信上位机软件
- TCP UDP多机通信无法接收到数据的问题
- QT基础(八)----TCP通信 & UDP通信
- Node.js实现基于TCP与UDP的数据通信
- QT 简单的网络通信(tcp ,udp)
- 关于Qt中Udp通信过程中的接收数据部分注意
- iOS 一个在UDP/TCP通信时,对16进制、10进制、NSData等数据之间的转换发送等处理的工具类库,一行代码将16进制字符串轻松转换成UDP需要的指令数据