我正在通过网络从C服务器接收到我的Python客户端的结构。协议是UDP。我无法控制服务器,它是协议/数据格式。它由这个结构(是的,在IPv4 +端口)的:反序列化C数据
struct ip_s {
uint8_t i1;
uint8_t i2;
uint8_t i3;
uint8_t i4;
uint16_t port; // big endian
};
除了将其转化为大端数据被发送“原样”,浇铸到一个(char*)
的端口。
如何将此结构接收为可由Python处理的格式?
其它信息:
- Python 2.7版或3.x的
- 跨平台
- 最好的解决方案只使用内置模块
已经发现它是正确的,但我会留下问题以供进一步参考。 – orlp 2011-05-16 22:29:47
噢,''BBBBH''应该是''!BBBBH“'的大端口。 – orlp 2011-05-16 22:39:34
我自由地编辑了你的答案。 – orlp 2011-05-17 00:24:51