I have tried most of the ideas (except the most recent one which is next on my list) and have had no luck. My H2 batteries died while I was in the middle of a 2 hour recording. The real bummer is I just assumed the file was there, and I then replaced the batteries and continued recording for another hour and a half. It was only then that I discovered the empty file for the first recording. I will try aumeta's idea but I'm afraid I may have overwritten the lost file...so far, none of the data recovery programs have been any help and I wasn't able to get audacity to read the empty file.
At this point, you can probably forget about recovery.
When it "died" it meant that the FAT (directory) identifying allocated blocks were not updated to reflect the data written. If the directory entry is wrong, the card would show an available capacity corresponding to the space taken by the "missing" recording.
The name of the file system originates from the file system's prominent usage of an index table, the FAT, statically allocated at the time of formatting. The table contains entries for each cluster, a contiguous area of disk storage. Each entry contains either the number of the next cluster in the file, or else a marker indicating end of file, unused disk space, or special reserved areas of the disk.
If the cluster chain (the table entries for a single file) were not written, then the FAT likely contained "unused" markers in that chain, so when the second recording was started and the system looked for a free cluster, it would find the ones that were supposed to be the first recording.