【发布时间】:2013-12-01 13:20:42
【问题描述】:
最近我编写了用 Qt 进行文件传输的程序。认为它现在有效,我仍然对发生的事情感到好奇。请帮我找出原因。非常感谢。
为什么head的大小大于sizeof(qin32)、sizeof(qint32)和文件名长度之和?(我猜是函数-setVersion()的原因)
QFileInfo info(file_to_send.fileName());
QByteArray head;
QDataStream out(&head, QIODevice::WriteOnly);
out.setVersion(QDataStream::Qt_5_0);
out << qint32(file_to_send.size() + info.fileName().length() + sizeof(qint32)*2)
<< qint32(info.fileName().length())
<< info.fileName();
tcpClient.write(head);
【问题讨论】:
-
客户端头部尺寸:40 |客户端标题:[252592][14][“Screenshot.png”]
标签: qt qbytearray