/// <summary> /// MD5加密 /// </summary> /// <param name="str"></param> /// <returns></returns> public static string CalcMD5(this string str) { byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str); return CalcMD5(bytes); } public static string CalcMD5(byte[] bytes) { using (MD5 md5 = MD5.Create()) { byte[] computeBytes = md5.ComputeHash(bytes); string result = ""; for (int i = 0; i < computeBytes.Length; i++) { result += computeBytes[i].ToString("X").Length == 1 ? "0" + computeBytes[i].ToString("X") : computeBytes[i].ToString("X"); } return result; } } public static string CalcMD5(Stream stream) { using (MD5 md5 = MD5.Create()) { byte[] computeBytes = md5.ComputeHash(stream); string result = ""; for (int i = 0; i < computeBytes.Length; i++) { result += computeBytes[i].ToString("X").Length == 1 ? "0" + computeBytes[i].ToString("X") : computeBytes[i].ToString("X"); } return result; } }