C#MD5計算ファイル

MD5の役割は、以下を参照してください。https://baike.baidu.com/item/MD5/212708?fr=aladdin

パブリック静的文字列GetFileMD5(文字列ファイルパス)
        { 
            のFileStream FS =新しいFileStreamを(ファイルパス、FileMode.Open、FileAccess.Read、FileShare.Read)。
            int型がbufferSize = 1048576; 
            バイト[]バフ=新しいバイト[bufferSizeの]。
            MD5CryptoServiceProvider MD5 =新しいMD5CryptoServiceProvider(); 
            md5.Initialize(); 
            長いオフセット= 0; 
            一方(<fs.Lengthオフセット)
            { 
                長いREADSIZE =あるbufferSize。
                IF(オフセット+ READSIZE> fs.Length)
                    READSIZE = fs.Length -オフセット。
                fs.Read(バフ、0、Convert.ToInt32(READSIZE))。
                (+ READSIZE <fs.Lengthオフセット)の場合
                    md5.TransformBlock(バフ、0、Convert.ToInt32(READSIZE)、バフ、0); 
                    md5.TransformFinalBlock(バフ、0、Convert.ToInt32(READSIZE)); 
                + = bufferSizeのオフセット。
            } 
            IF(オフセット> = fs.Length)
            { 
                fs.Close()。
                バイト[]結果= md5.Hash。
                md5.Clear(); 
                StringBuilderのSB =新しいStringBuilderの(32)。
                (; iがresult.Lengthを<I ++はiが0 = INT)のため
                    sb.Append([I] .ToString( "X2")をもたらします)。
                sb.ToStringを返します();
            } 
            { 
                fs.Close()。 
                リターンはnull; 
            } 
        }

  ファイルへの絶対パス:ファイルパス

おすすめ

転載: www.cnblogs.com/zebra-bin/p/11058690.html