Как я могу упаковать интервал как обратный порядок байтов на 32 бита в Perl?

Рассмотрите этот отрывок:

use strict;
use warnings;

my $data = "1";
my $packed = pack("I",$data);
open(my $file,">","test.bin") || die "error $!\n";
binmode $file;
print $file $packed;

Вещь, пытаясь считать его из другого языка, это, кажется, прямой порядок байтов. Есть ли какой-либо аргумент шаблона, который позволяет мне писать это как обратный порядок байтов? Я хотел бы постараться не делать дополнительную работу при чтении.

5
задан Geo 14 February 2010 в 10:50
поделиться

2 ответа

Рассмотрите возможность использования шаблона «N» с пакетом:

http://perldoc.perl.org/functions/pack.html

4
ответ дан 14 December 2019 в 08:49
поделиться

Решением является шаблон N .

my $packed = pack "N", $data;

Список всех опций пакетов см. В документации pack .

3
ответ дан 14 December 2019 в 08:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: