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

Re: Trying to do multiple while loops on the same input file

by thezip (Vicar)
on Jun 01, 2011 at 16:35 UTC ( #907662=note: print w/replies, xml ) Need Help??

in reply to Trying to do multiple while loops on the same input file

This doesn't answer to your original problem of reading a file with multiple while loops, but it does present another WTDI that, to me, seems much more natural.

Since your file is really small, read it in its entirety into and array of lines, a la:
use strict; use warnings; use autodie; my $filename = 'filename.txt'; open my $ifh, '<', $filename; my @lines = <$ifh>; close $ifh;

Now you can process the content of you file to your heart's content by simply maintaining the relevant indices for the lines you want to be dealing with, and iterating via "for" loops. You can do this as many times as you want without having to worry about iterating via <>...

Updated: Added blurb re: for-loop iteration

What can be asserted without proof can be dismissed without proof. - Christopher Hitchens

Replies are listed 'Best First'.
Re^2: Trying to do multiple while loops on the same input file
by elef (Friar) on Jun 01, 2011 at 17:13 UTC
    Good suggestion. In this particular case, I just moved the open and close commands inside the loop, but in other situations, reading the file into an array would make more sense.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://907662]
[Eily]: muthusathish ok, the fact that you can't tell what perl has to do with it proves it: this is not perl

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (9)
As of 2018-02-23 09:20 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (301 votes). Check out past polls.