部分内容为学习过程中从网上搜集保存备份,以防源网站关闭后无法检索。如有涉及版权请留言,看到后处理

C#获取文件MD5

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

namespace SendOutRequire
{
    public class MD5Code
    {
        /// <summary>
        /// 获取文件的MD5码
        /// </summary>
        /// <param name="fileName">传入的文件名(含路径及后缀名)</param>
        /// <returns></returns>
        public string GetMD5HashFromFile(string fileName)
        {
            try
            {
                FileStream file = new FileStream(fileName, System.IO.FileMode.Open);
                MD5 md5 = new MD5CryptoServiceProvider();
                byte[] retVal = md5.ComputeHash(file);
                file.Close();
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < retVal.Length; i++)
                {
                    sb.Append(retVal[i].ToString("x2"));
                }
                return sb.ToString();
            }
            catch (Exception ex)
            {
                throw new Exception("GetMD5HashFromFile() fail,error:" + ex.Message);
            }
        }
    }
}

 

posted @ 2021-09-08 14:56  Y档案Y  阅读(568)  评论(0编辑  收藏  举报