http://qs1969.pair.com?node_id=774392


in reply to Re^3: a REFERENCE of array of hashes
in thread a REFERENCE of array of hashes

You need to specify a 'mode' when you use open. This means that you specify whether you want to read from or write to a particular file (you can do both, but you don't need that for now).

use strict; use warnings; my $INPUT; my $OUTPUT; open($INPUT, "<", "my_input_file.txt"); #the "<" tells it you want to +read from the file open($OUTPUT, ">" "my_output_file.txt"); #the ">" tells it you want to + write to the file. while(my $line=<$INPUT>){ #.. do some changes to $line .. print $OUTPUT $line #prints $line (after I've done whatever chang +es) to the file I opened as $OUTPUT }

check out here for some more info on filehandles. Also bear in mind that you can either not declare a filehandle, and just use a plain text word, e.g.  open(INPUT,"<","input_file.txt); or you can declare a variable as I did in the example above. IMO it's a better habit to get into to use a variable, as you start to get into trouble when/if you try to pass filehandles around subs (later..!)

hope this helps.
why_bird
........
Those are my principles. If you don't like them I have others.
-- Groucho Marx
.......