using System.Security.Cryptography; /// <summary> /// 生成对文件的MD5验证码,用于验证文件是否被篡改。当且仅当文件内容一致产生的MD5验证码才会一致 /// </summary> /// <param name="fileName">本地文件名称</param> /// <returns>MD5验证码</returns> public string MDFileContent(string fileName) { MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); // 类的哈希大小为 128 位 FileStream fst = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); //该文件流只能处理本地文件,如果处理远端可用基类Stream md5.ComputeHash(fst); //将哈希作为 16 字节的数组返回 byte[] hash = md5.Hash; StringBuilder sb = new StringBuilder(); foreach (byte byt in hash) { sb.Append(String.Format("{0:X2}", byt));//转成32位16进制字串 } fst.Close(); return sb.ToString(); }