2011-09-20 66 views
1

我正在使用Philip Semanchunk的posix_ipc python模塊從posix消息隊列讀取數據。我寫的C++程序用包含數據的結構填充隊列。我的python程序成功地從隊列中讀取消息,但我不確定如何處理所產生的消息。如何解釋posix_ipc :: MessageQueue :: receive()的返回值?

做一個print msg只是打印出一個空字符串,但我知道味精有東西在裏面。

我希望能夠讀取結構的成員,但我假設我需要做一些事情,可能與結構模塊將這個消息編組爲可讀?有沒有人做過這樣的事情?

我已經通讀他的文檔和演示,但他使用簡單的類型,我還沒有找到任何源代碼是C結構的例子。谷歌也沒有任何幫助。

此外,我僅限於使用Python 2.3。謝謝!

+0

嘗試調用目錄(MSG)的元組,看哪些屬性等你一起玩。 –

+0

好的建議!看起來我正在處理一串轉義的十六進制值。現在我在哪裏看到了這個...我認爲結構模塊應該照顧這一點。 – awm129

回答

1

使用Python結構模塊。

struct::unpack()MessageQueue::receive()十六進制字符串轉換成字符串