我正在寻找Python3 lib或处理二进制数据的实现方式。 这个例子告诉你的不仅仅是文字:
数据包的第一部分:
packet.data1 = '0x0EDD'
我想将开头与最后两位分开,所以我使用数组方法:
my_id = int(bin(int(packet.data1,16))[-2:],2)
my_len_of_len = int(bin(int(packet.data1,16))[:-2],2)
现在在第二部分,如果my_len_of_len等于1,我必须抓住以下字节,如:
packet.data2 = '0x08'
然后我必须将它转换为int才能知道后面的字节数,它们是消息的内容:
my_len = int(packet.data2,16)
现在我可以从数据中捕获消息。我试图了解一个游戏协议,但我知道的方法,它的速度慢了#34;很难找到所有数组索引。
我的解决方案?
谢谢。