Consider this snippet:
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;
The thing is, trying to read it from another language, this appears to be little endian. Is there any template argument that allows me to write it as big endian? I'd like to avoid doing extra work when reading.
Consider using the "N" template with pack:
http://perldoc.perl.org/functions/pack.html
The solution is the N
template.
my $packed = pack "N", $data;
See the pack documentation for a list of all pack options.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With