in reply to Convert binary file to ascii
use warnings; use strict; @ARGV == 2 or die "usage: $0 in_filename out_filename\n"; # get first argument, i.e filename my $in_filename = shift; print "You chose input <$in_filename>\n"; my $out_filename = shift; print "You chose output <$out_filename>\n"; #set infile to binary mode open INFILE, '<:raw', $in_filename or die "can't open $in_filename: $! +"; open OUTFILE, '>', $out_filename or die "can't open $out_filename: $!" +; # read 8 bytes at a time $/ = \8; while ( <INFILE> ) { print OUTFILE join( ', ', map sprintf( '0x%04x', $_ ), unpack 'S*' +, $_ ), "\n"; }
|
|---|