in reply to Hash values as filehandles

Looking at your code I'm somewhat perplexed by what you are trying to do since I don't know what's in what variable.

If $record[0] is supposed to be a file name you might want to consider trying something like:

use FileHandle; : : hand waving like crazy here.. $fh{record[0]}=new FileHandle $record[0],"r" or die $!; : :
or some such.