• 计算文档md5加密


    /// <summary>
            /// 计算文件MD5值
            /// </summary>
            /// <param name="pathName"></param>
            /// <returns></returns>
            public static string GetMd5Hash(string pathName)
            {
                string strResult = "";
                string strHashData = "";
                byte[] arrbytHashValue;

                System.IO.FileStream oFileStream = null;

                System.Security.Cryptography.MD5CryptoServiceProvider oMD5Hasher = new System.Security.Cryptography.MD5CryptoServiceProvider();

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

                    arrbytHashValue = oMD5Hasher.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;
            }

    /// <summary>
            /// 计算文件MD5值
            /// </summary>
            /// <param name="pathName"></param>
            /// <returns></returns>
            public static string GetMd5Hash(Stream data)
            {
                string strResult = "";
                string strHashData = "";
                byte[] arrbytHashValue;
                System.Security.Cryptography.MD5CryptoServiceProvider oMD5Hasher = new System.Security.Cryptography.MD5CryptoServiceProvider();
                try
                {
                    arrbytHashValue = oMD5Hasher.ComputeHash(data); //计算指定Stream 对象的哈希值

                    //由以连字符分隔的十六进制对构成的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;
            }

  • 相关阅读:
    HDU 1969 Pie(二分查找)
    HDU 1896 Stones (优先队列)
    HDU 1548 A strange lift(BFS)
    HDU 1518 Square(DFS)
    CDOJ1085 基爷与加法等式 爆搜DFS
    Codeforces Round #245 (Div. 2) C. Xor-tree DFS
    Codeforces ZeptoLab Code Rush 2015 B. Om Nom and Dark Park DFS
    Codeforces Round #297 (Div. 2)E. Anya and Cubes 折半搜索
    Codeforces Round #401 (Div. 2)A B C
    Codeforces Round #297 (Div. 2)D. Arthur and Walls 搜索bfs
  • 原文地址:https://www.cnblogs.com/kaixing/p/2466380.html
Copyright © 2020-2023  润新知