Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re: Iterating through HUGE FILES

by smullis (Pilgrim)
on May 12, 2005 at 10:57 UTC ( #456340=note: print w/replies, xml ) Need Help??

in reply to Iterating through HUGE FILES

Hello there,

I'm surprised no-one else has mentioned this but you should probably check out Tie::File. (Maybe it has been mentioned and I didn't notice.... But anyway).

...lifted straight from the module docs...

# This file documents Tie::File version 0.96 use Tie::File; tie @array, 'Tie::File', filename or die ...; $array[13] = 'blah'; # line 13 of the file is now 'blah' print $array[42]; # display line 42 of the file $n_recs = @array; # how many records are in the file? $#array -= 2; # chop two records off the end for (@array) { s/PERL/Perl/g; # Replace PERL with Perl everywhere in the + file } # These are just like regular push, pop, unshift, shift, and splice # Except that they modify the file in the way you would expect push @array, new recs...; my $r1 = pop @array; unshift @array, new recs...; my $r2 = shift @array; @old_recs = splice @array, 3, 7, new recs...; untie @array; # all finished


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://456340]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (7)
As of 2017-11-18 07:10 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (277 votes). Check out past polls.