I see. How about using Data::Dumper to make a file of your hashes? Then read this file in (split each structure based on some delimiter you add during the write process and rebuild hashes w/ eval like described in the answers to Read the Dumper data back to a hash.