| Refresh | Home EGTry.com

read and write binary file


my $data=getData($ARGV[0]);
writeData($ARGV[1], $data);

sub writeData {
  my ($filename, $data)=@_;
  local(*OUT);
  open(OUT, ">$filename") || die "can not open $filename";
  binmode(OUT);
  print OUT $data;
  close(OUT);
}

sub getData {
  my $filename=shift;
  local(*IN);

  open(IN, $filename) or die $!; 
  binmode IN;
  my ($buf, $data, $n); 
  while (($n = read IN, $data, 1024) != 0) { 
    #print "$n bytes read\n"; 
    $buf .= $data; 
  } 
  close(IN);
  return $buf;
}