I'm calculating md5 checksums on very large files (2 GB). This is a safe
way to do so, right? Also... is the file closed when the block exits?
I'm using 'rb' as this is used on Windows and Linux computers.
md5 = Digest::MD5.new()
File.open(file, 'rb').each {|line| md5.update(line)}