raku - Raku 是否有与 Python 的 Struct 类似的功能?
问题描述
在 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')
Raku 是否有与 Python 的 Struct 类似的功能?如何根据 Raku 中的格式字符串解压缩二进制数据?
解决方案
有实验解包
use experimental :pack;
my $bytearray = "01234567".encode('utf-8');
say $bytearray.unpack("A1 L H");
但是,它并不完全相同。这输出“(0 875770417 35)”。也许你可以稍微调整一下。
还有一个 Perl 的pack
/unpack
在P5pack中的实现