public static string GetMd5(this Stream stream)
{
var oMd5Hasher = new MD5CryptoServiceProvider();
var arrbytHashValue = oMd5Hasher.ComputeHash(stream);
#region 重构前
//// 由以连字符分隔的十六进制对构成的String,其中每一对表示value 中对应的元素;例如“F-2C-4A”
//string strHashData = BitConverter.ToString(arrbytHashValue);
//// 替换-
//return strHashData.Replace("-", string.Empty).ToLower();
#endregion
var sbd = new StringBuilder();
foreach (var item in arrbytHashValue)
{
sbd.Append(item.ToString("x2"));
}
return sbd.ToString();
}