Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

binmode binmoding binmode again

by PodMaster (Abbot)
on Apr 28, 2004 at 21:21 UTC ( #348962=note: print w/replies, xml ) Need Help??

in reply to Problem Encoding/Decoding PDF with MIME::Base64

Practically everytime I've seen someone release a module with a slurp function it has always lacked binmode (at first), and IO::All is no different. Know thy tools

update: granted you could use open IN => ":raw", OUT => ":raw"; to set default disciplines for input and output, but a good slurp function should binmode.

MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
** The third rule of perl club is a statement of fact: pod is sexy.

Replies are listed 'Best First'.
Re: binmode binmoding binmode again
by DamnDirtyApe (Curate) on Apr 28, 2004 at 21:35 UTC

    Thanks PodMaster, that was it precisely. I rewrote the programs as follows:

    #! /usr/bin/perl use strict; use MIME::Base64 qw( encode_base64 ); open INFILE, '<', $ARGV[0]; binmode INFILE; open OUTFILE, '>', $ARGV[1]; my $buf; while ( read( INFILE, $buf, 60 * 57 ) ) { print OUTFILE encode_base64( $buf ); } close OUTFILE; close INFILE; __END__

    #! /usr/bin/perl use strict; use MIME::Base64 qw( decode_base64 ); open INFILE, '<', $ARGV[0]; open OUTFILE, '>', $ARGV[1]; binmode OUTFILE; my $buf; while ( $buf = <INFILE> ) { print OUTFILE decode_base64( $buf ); } close OUTFILE; close INFILE; __END__

    The PDF decoded correctly this time. Thanks!

    Those who know that they are profound strive for clarity. Those who
    would like to seem profound to the crowd strive for obscurity.
                --Friedrich Nietzsche

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://348962]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (1)
As of 2021-12-04 07:06 GMT
Find Nodes?
    Voting Booth?
    R or B?

    Results (30 votes). Check out past polls.