zoukankan      html  css  js  c++  java
  • C#文件MD5和SHA1值的类

    代码
    public class MD5
        {
            
    public MD5()
            {
                
            }

            
    private static byte[] ConvertStringToByteArray(string data)
            {
                
    return(new System.Text.UnicodeEncoding()).GetBytes(data);
            }

            
    private static System.IO.FileStream GetFileStream(string pathName)
            {
                
    return(new System.IO.FileStream(pathName, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite));
            }

            
    public static string GetSHA1Hash(string pathName)
            {
                
    string strResult = "";
                
    string strHashData = "";

                
    byte[] arrbytHashValue;
                System.IO.FileStream oFileStream 
    = null;

                System.Security.Cryptography.SHA1CryptoServiceProvider oSHA1Hasher 
    = new System.Security.Cryptography.SHA1CryptoServiceProvider();

                
    try
                {
                    oFileStream 
    = GetFileStream(pathName);
                    arrbytHashValue 
    = oSHA1Hasher.ComputeHash(oFileStream);
                    oFileStream.Close();

                    strHashData 
    = System.BitConverter.ToString(arrbytHashValue);
                    strHashData 
    = strHashData.Replace("-""");
                    strResult 
    = strHashData;
                }
                
    catch(System.Exception ex)
                {
                    System.Windows.Forms.MessageBox.Show(ex.Message, 
    "Error!", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error, System.Windows.Forms.MessageBoxDefaultButton.Button1);
                }

                
    return(strResult);
            }

            
    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 
    = GetFileStream(pathName);
                    arrbytHashValue 
    = oMD5Hasher.ComputeHash(oFileStream);
                    oFileStream.Close();

                    strHashData 
    = System.BitConverter.ToString(arrbytHashValue);
                    strHashData 
    = strHashData.Replace("-""");
                    strResult 
    = strHashData;
                }
                
    catch(System.Exception ex)
                {
                    System.Windows.Forms.MessageBox.Show(ex.Message, 
    "Error!", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error, System.Windows.Forms.MessageBoxDefaultButton.Button1);
                }

                
    return(strResult);
            }

        }

    使用方法:

    MD5.GetMD5Hash(textBox1.Text);

    textBox1中为文件的路径

  • 相关阅读:
    [JavaScript]继续学习DOM事件模型
    [面试]作答整理一些面试题
    [JavaScript]使用jQuery实现无缝轮播
    [JavaScript]使用CSS + jQuery 实现自动轮播图
    [JavaScript]从DOM到jQuery(2)
    [JavaScript]从DOM到jQuery(1)
    [JavaScript]JavaScript中的函数(2)
    [JavaScript]JavaScript中的函数(1)
    [JavaScript]JavaScript中的Array
    React练习 7 :点击div,显示innerHTML
  • 原文地址:https://www.cnblogs.com/wangbin5542/p/1747468.html
Copyright © 2011-2022 走看看