从Pytom发送UTF-8格式的QDataStream 我试图使用Python程序将数据发送到一个使用TCP套接字连接的C++程序。接收程序将只接受一个QByteArray,它可以从Python3发送。我使用QByteArray创建的QDataStream,并将int和char数据写入流中。问题是,我只能让Python程序将我的字符字符串作为16位字符发送,而接收程序坚持使用8位字符

从Pytom发送UTF-8格式的QDataStream 我试图使用Python程序将数据发送到一个使用TCP套接字连接的C++程序。接收程序将只接受一个QByteArray,它可以从Python3发送。我使用QByteArray创建的QDataStream,并将int和char数据写入流中。问题是,我只能让Python程序将我的字符字符串作为16位字符发送,而接收程序坚持使用8位字符,python,utf-8,tcp,Python,Utf 8,Tcp,有没有办法让QDataStream包含8位字符 如果是这样,请举个例子。我已经搜索了在线文档,尝试了writeRawData等,但找不到任何有用的东西。您的Python程序也有GUI吗?或者为什么要使用Qt库中的数据类型?通过标准库可以很好地处理套接字和二进制流,在标准库中可以更容易地获得底层规范(如单词大小)。没有GUI。我必须遵从我正在尝试沟通的现有C++程序,它坚持接收8位字符的QByTurRay.我设法通过将每个字符添加到QDATASTRAM中,并以QByTeLayRead的WrreEn

有没有办法让QDataStream包含8位字符


如果是这样,请举个例子。我已经搜索了在线文档,尝试了writeRawData等,但找不到任何有用的东西。

您的Python程序也有GUI吗?或者为什么要使用Qt库中的数据类型?通过标准库可以很好地处理套接字和二进制流,在标准库中可以更容易地获得底层规范(如单词大小)。没有GUI。我必须遵从我正在尝试沟通的现有C++程序,它坚持接收8位字符的QByTurRay.我设法通过将每个字符添加到QDATASTRAM中,并以QByTeLayRead的WrreEnt8方法单独地将数据发送和接收。由于我不知道的原因,我仍然不得不用20个字符来填充文本的开头。