There's a plethora of applications for this on most, if not all, platforms. When a file is "deleted" (as in
not sent to the "recycle bin" (or similar), it is usually not permanently erased.
In a nutshell:
Deleting and Un-deleting
An application or operating system deleting a file simply marks that space on the disk as "available". In essence, you could un-delete anything so long as you did not overwrite that area of the disk.
Security Considerations:
To prevent things like privacy invasion and industrial espionage, among others, there are security applications available which intentionally overwrite a deleted file up to several times.
Further Reading:
For more information, I suggest you get stuck into Wikipedia, and study up on how file storage works. Here's a starting point
file deletion.
Software Resources:
You should find plenty of un-delete utilities on
Softpedia.
Hope that helps.
"If you don't stand for something, you'll fall for anything" -- Wise Man