UTF-7编码的无符号整数
项目描述
UTF-7编码的无符号整数的编码/解码器。
>>> utf7.pack_bytes(65535)
b'\xff\xff\x03'
>>> utf7.unpack_bytes(b'\xff\xff\x03')
65535
UTF-7 uint用于Microsoft .NET Framework中的BinaryWriter.Write(String)。以下是一个Python服务器和C#客户端之间的ping-pong示例
while not socket.closed:
# recv ping
ping_size = utf7.unpack_socket(socket)
ping_data = socket.recv(ping_size)
assert ping_data == b'ping'
# send pong
pong_data = b'pong'
pong_size = len(pong_data)
utf7.pack_socket(pong_size, socket)
socket.send(pong_data)
您还可以使用用C编写的_utf7进行高速操作
import _utf7 as utf7