我正在使用Philip Semanchunk的posix_ipc python模块从posix消息队列中读取。我编写的C ++程序使用包含数据的结构填充队列。我的python程序成功地从队列中读取消息,但我不知道如何处理生成的消息。
执行print msg
只打印出一个空字符串,但我知道msg中有一些内容。
我希望能够读取结构的成员,但我想我可能需要使用struct模块做一些事情来将这个消息编组成可读的东西?有人做过这样的事吗?
我已阅读他的文档和演示,但他使用的是简单类型,我没有找到任何源是C结构的示例。谷歌也没有任何帮助。
另外,我只能使用Python 2.3。谢谢!
答案 0 :(得分:1)
使用Python结构模块。
struct::unpack()
会将MessageQueue::receive()
的十六进制字符串转换为字符串元组