C# 计算文件SHA1值

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

 
public static string GetSHA1Hash(string pathName)
{
    string strResult = "";
    string strHashData = "";
    byte[] arrbytHashValue;

    System.IO.FileStream oFileStream = null;

    System.Security.Cryptography.SHA1CryptoServiceProvider osha1 = new System.Security.Cryptography.SHA1CryptoServiceProvider();
    try
    {
        oFileStream = new System.IO.FileStream(pathName.Replace("\\"", ""), System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite);

        arrbytHashValue = osha1 .ComputeHash(oFileStream); //计算指定Stream 对象的哈希值

        oFileStream.Close();

        //由以连字符分隔的十六进制对构成的String,其中每一对表示value 中对应的元素;例如“F-2C-4A”

        strHashData = System.BitConverter.ToString(arrbytHashValue);

        //替换-
        strHashData = strHashData.Replace("-", "");

        strResult = strHashData;
    }

    catch (System.Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
    return strResult;
}