文件加密
/// <summary> /// 获取文件的MD5码 /// </summary> /// <param name="fileName">传入的文件名(含路径及后缀名)</param> /// <returns></returns> public static string GetMD5HashFromFile( string fileName) { try { using (var file = new FileStream(fileName, System.IO.FileMode.Open)) { MD5 md5 = new MD5CryptoServiceProvider(); byte[] retVal = md5.ComputeHash(file); StringBuilder sb = new StringBuilder(); for (int i = 0; i < retVal.Length; i++) { sb.Append(retVal[i].ToString("x2"));//加密结果"x2"结果为32位,"x3"结果为48位,"x4"结果为64位 } return sb.ToString(); } } catch (Exception ex) { throw new Exception("GetMD5HashFromFile() fail,error:" + ex.Message); } } public static string GetSha1HashFromFile(string fileName) { try { using (var file = new FileStream(fileName, System.IO.FileMode.Open)) { SHA1 sha = new SHA1CryptoServiceProvider(); byte[] retVal = sha.ComputeHash(file); StringBuilder sb = new StringBuilder(); for (int i = 0; i < retVal.Length; i++) { sb.Append(retVal[i].ToString("x2"));//加密结果"x2"结果为40位,"x3"结果为60位,"x4"结果为80位 } return sb.ToString(); } } catch (Exception ex) { throw new Exception("GetMD5HashFromFile() fail,error:" + ex.Message); } }