There are programs that can help recover from minor data corruption, such as ICE ECC, by creating recovery information which can be later used to verify or repair the original data.
The program CDCheck can try to recover files off damaged disks, replacing unreadable sections with zeros. The CDCheck website also lists some other (mostly older) recovery software.

Both programs are for Windows; if there are similar open source or cross platform programs around, they may have a better chance of maintaining backward compatibility.