怎么计算一个文件的md5值

如何计算一个文件的md5值?
各位大侠,c++builder xe2,使用TFileStream将一个文件加载到内存里,如何计算这个文件的md5值呢?c++是否有这样的函数,可以直接对TFileStream计算md5啊?
------解决思路----------------------
http://www.cnblogs.com/cb168/p/3976795.html
能计算字符串,也能计算文件流