now*_*wox 2 binary perl integer pack
我有一个无符号整数数组(32位),我想pack进入二进制流:
my @n = (4,8,15,16,23,42);
my $foo = join('', map(pack('I', $_), @n)); # Ugly, isn't?
Run Code Online (Sandbox Code Playgroud)
$foo 应该包含这个二进制流(取决于字节顺序)
0000000 0000 0004 0000 0008 0000 000F 0000 0010
0000010 0000 0017 0000 002A
Run Code Online (Sandbox Code Playgroud)
然后我想将unpack二进制流返回一个数组.
如何使用Perl正确执行此操作,如果可能,仅使用内置模块?
所有你需要的是
my $packed = pack('I*', @nums); # unsigned int (varies in size)
my $packed = pack('L*', @nums); # uint32_t
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
514 次 |
| 最近记录: |