Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Unpack Bin file problem

by bart (Canon)
on Mar 01, 2013 at 21:38 UTC ( #1021348=note: print w/ replies, xml ) Need Help??


in reply to Unpack Bin file problem

Your problem is in

my @lines = unpack ("W*", <INFILE>);
and you haven't touched $/, so this will just read one line, until the first "\n".

Do

local $/;
just before you read the file, for example in a bare block, and oh, don't forget to binmode the filehandle if this has to work on something other than Linux, and it'll work fine. It sets this special variable to undef, in case you were wondering, so now you'll read the whole file.


Comment on Re: Unpack Bin file problem
Select or Download Code
Re^2: Unpack Bin file problem
by mark4444az (Sexton) on Mar 01, 2013 at 22:36 UTC
    OK, That worked. Your comment, "It sets the special variable to undef", is not yet clear to me. I will have to research this. I greatly appreciate you help. I understand the concept of $_, just not how local $/ modifies it.
      It doesn't modify the behavior of $_, but of <INFILE> (for any handle).

      Perl has a bunch of special variables that change the behavior of perl. $/ Is one of them, it changes what string readline, and thus <INFILE>, searches for as a line terminator, to read a whole line at once. When undef, it'll just make it slurp in the rest of the file.

      OK, that makes sense now. Thanks again.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (5)
As of 2014-08-30 02:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (291 votes), past polls