在 Python 中解包二进制数据:
import struct
bytesarray = "01234567".encode('utf-8')
# Return a new Struct object which writes and reads binary data according to the format string.
s = struct.Struct('=BI3s')
s = s.unpack(bytesarray) # Output: (48, 875770417, b'567')
Run Code Online (Sandbox Code Playgroud)
Raku 有类似 Python 的 Struct 的功能吗?如何根据 Raku 中的格式字符串解压缩二进制数据?
有实验解包
use experimental :pack;
my $bytearray = "01234567".encode('utf-8');
say $bytearray.unpack("A1 L H");
Run Code Online (Sandbox Code Playgroud)
但是,它并不完全相同。这输出“(0 875770417 35)”。也许你可以稍微调整一下。
在P5pack 中还有 Perl 的pack/实现unpack