2016-01-21 89 views
4

我目前正在努力讓蟒蛇插座整數發送到Java插座,因此Java插座可以在一個字節數組,這個步驟之後,表示一個字符串讀。發送從蟒蛇插座一個int到Java插座

我試圖發送一個結構中的int,但返回在Java端數量龐大。

p = struct.pack('i', len(data)) 
clientsocket.send(p) 
+1

您需要查看不同的序列化庫,像msgpack這樣的東西允許您以統一的方式發送數據,以便所有語言都可以理解數據。 –

+2

也許*字節順序*是錯誤的...我想你是在Intel平臺上工作。那將是Little Endian。互聯網和Java VM標準是Big Endian。所以也許所有的字節都是錯誤的順序(4-3-2-1的python可能發送1-2-3-4)。也許這就是問題所在。我沒有蟒蛇BTW ;-) – JayC667

+0

我個人不使用序列在所有的線索,但看只是原始數據發送到插座。在Java中,您可以使用原始的Input/OutputStream和DataInput/OutputStream執行此操作。 – markspace

回答