Qt中如何通过tcp发送结构体
2014-12-10 16:48
295 查看
前一段时间移植在想Qt如何通过TCP发送结构体,网上有人说可以通过如下方式
但是我没有成功,read有数据缓存问题,所以读过来的的数据不正确,有时 对一个,又是一个也读不出,于是尝试用readall()然后通过memcpy((&recvBuffer,temp,sizeof(CLIENTTOSERVERMESSAGE));转换成结构体,这种方法我也没成功,通过readall()一个都读不出来,具体原因现在还没找到,
于是通过下面的方法
inline QDataStream&
operator<<(QDataStream&
out,
stu_Info
&stu_info)
inline QDataStream&
operator>>(QDataStream&
in,
stu_Info
&stu_info)
通过重载操作符算是实现了,不过这也不太算是传送结构体,不过实现了我想要的功能。
tcpSocket->write((char *)&objectA, sizeof(objectA));
tcpSocket->read((char *)&objectA, sizeof(objectA));
但是我没有成功,read有数据缓存问题,所以读过来的的数据不正确,有时 对一个,又是一个也读不出,于是尝试用readall()然后通过memcpy((&recvBuffer,temp,sizeof(CLIENTTOSERVERMESSAGE));转换成结构体,这种方法我也没成功,通过readall()一个都读不出来,具体原因现在还没找到,
于是通过下面的方法
inline QDataStream&
operator<<(QDataStream&
out,
stu_Info
&stu_info)
{
out<<stu_info.name;
out<<stu_info.age;
out<<stu_info.sex;
return out;
}
inline QDataStream&
operator>>(QDataStream&
in,
stu_Info
&stu_info)
{
in>>stu_info.name;
in>>stu_info.age;
in>>stu_info.sex;
}
通过重载操作符算是实现了,不过这也不太算是传送结构体,不过实现了我想要的功能。
相关文章推荐
- QT5界面程序和VS程序的TCP/IP通信,发送数组、结构体等
- 如何通过Socket TCP发送并接收一个文件?
- Qt在信号中如何发送自定义结构体,或者发送多个自定义参数
- 通过鼠标事件来看QT/Embedded 窗体事件是如何派发的
- 如何通过socket发送和接受dataset数据集(C#)
- [轉] 如何通过电脑发送短信——开始篇
- [原创]在Managed Code通过Google Gmail发送邮件以及如何通过Outlook配置Gmail
- 如何使用PHP通过SMTP发送电子邮件
- 如何通过电脑发送短信——开始篇
- 如何通过EasyDgm发送中文短信(unicode)
- 如何实现通过自己的程序发送邮件
- 如何通过发送到Soft Key Bar上的消息捕获一些硬按键
- 如何通过 ASP 来发送带附件、格式为 HTML 的邮件?下面提供了一个例程.
- C#通过TCP传送结构体(转帖)
- 通过异步方式发送和接收数据(tcp异步收发数据)
- 如何在ASP.NET2.0中通过Gmail发送邮件
- 如何通过SMS发送WAP Push
- 如何通过需要验证的邮件服务器发送邮件?
- 如何通过一个结构体成员变量的地址找到该结构体的首地址?
- 如何通过GSM猫发送和接受GSM短信