in reply to unreadable hash keys
^@ is almost certainly a null and very likely your file has been written as a unicode file without a BOM.
What code did you use to write the file?