in reply to Reorganizing file contents
Just a quick suggestion it is recommended to use indirect filehandles instead of INPUT, OUTPUT because those are global and if your application use same name in another part they might collide. So it is recommended the following syntax:
open(my $output_fh, '>> myoutputfile'); open(my $input_fh, '< myoutputfile');
that way you ensure the scope of the file handle is your function/method or package. For further reading read perlopentut
On your problem you don't need a hash to keep the file handle open, you just need to define it in the correct scope, for example:
my $output_fh; while(<$input_fh>) { if ( $some_condition ) { open($output_fh, '>> myfile'); } else { print $fh "What ever i want: $_" if ($fh); #In case you have +some lines before $some_condintion is true; } } close($output_fh);
choroba is right, the scope is for the indirect filehandles
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Reorganizing file contents
by choroba (Cardinal) on Jun 09, 2010 at 09:31 UTC |