my $x = <$f>; $! and croak "can't read mydata.txt: $!"; #### open my $fh, '<', 'mydata.txt' or die $!; defined( my $data = do { local $/; <$fh> } ) or die $!; close $fh or die $!; #### open my $fh, '<:raw', 'mydata.txt' or die $!; my $size = -s $fh; read($fh, my $data, $size) == $size or die $!; close $fh or die $!;