这个'\x00\x00\x00\x05'是什么编码?

Dan*_*npe 1 python java sockets encoding tcp

我使用以下命令将一个整数从 Java 客户端发送到 Python 服务器:

outputStream.writeInt(5);
Run Code Online (Sandbox Code Playgroud)

在服务器上:

_id = self.request.recv(4)
Run Code Online (Sandbox Code Playgroud)

我得到:

Name   | Type|  Value
_id    | str |  '\x00\x00\x00\x05'
Run Code Online (Sandbox Code Playgroud)

我如何解码它并将其转换回 Integer ?

Mar*_*ers 5

您可以使用 pythonstruct模块对其进行解码:

>>> import struct
>>> struct.unpack('>i', '\x00\x00\x00\x05')
(5,)
Run Code Online (Sandbox Code Playgroud)

>i模式需要一个大端有符号整数(4 字节)。