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
Cheers
SM
|
|---|