最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#讀取文件MD5值的實現代碼

 更新時間:2014年08月12日 11:57:51   投稿:junjie  
這篇文章主要介紹了C#讀取文件MD5值的實現代碼,有了這個核心代碼,就可以實現校驗文件MD5值的一些程序了,需要的朋友可以參考下

本文介紹一個C#函數,可以實現計算文件的MD5值,可以用于文件傳輸后進行有效性校驗。

我們知道可以通過將一個字符串進行散列(Hash)運算得到一個32位字符串,將其作為密碼來保存是最常見的MD5應用。不知道大家有沒有注意到,在網上一些下載文件的地方,旁邊注明了MD5校驗值,也是一個32位十六制字符串。這個字符串怎么用呢?這就是文件的MD5加密。

當我們將一個文件從網上下載之后 ,可以計算一下文件的MD5值,然后和網上公布的MD5值進行對比。結果一致,表示文件沒有問題,如果結果不一致,有兩種可能,一是文件損壞了,無法使用;還有一種情況,那就是文件被人替換了。在下載exe文件時尤其應該注意,如果下載了一個被人替換過后的文件,那是相當危險的事,可能這個文件就被人植入了木馬。

那么應該怎么來計算文件的MD5值呢?洪哥給出了一段C#的源代碼。有興趣的朋友參考參考。注意,下面這段代碼要包含System.IO命名空間。

復制代碼 代碼如下:

/// <summary>
/// 計算文件的MD5校驗
/// </summary>
/// <param name="fileName"></param>
/// <returns></returns>
public static string GetMD5HashFromFile(string fileName)
{
    try
    {
        FileStream file = new FileStream(fileName, FileMode.Open);
        System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.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);
    }
}


大家可以看到,上面C#代碼主要創(chuàng)建了System.Security.Cryptography.MD5類,使用了它的ComputeHash方法。然后將字節(jié)數組轉換成16進制字符串返回。

大家可以通過上面的主要函數,自己用C#寫一個計算文件MD值的小程序了。
       
關于C#計算文件MD5值的代碼,本文就介紹這么多,希望對您有所幫助,謝謝!

相關文章

  • C#中接口(interface)的理解

    C#中接口(interface)的理解

    C#中接口(interface)的理解...
    2007-03-03
  • vs2019安裝和使用詳細圖文教程

    vs2019安裝和使用詳細圖文教程

    這篇文章主要介紹了vs2019安裝和使用詳細圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • C#實現讀取二維數組集合并輸出到Word預設表格

    C#實現讀取二維數組集合并輸出到Word預設表格

    這篇文章主要為大家詳細介紹了如何使用C#實現讀取二維數組集合并輸出到Word預設表格,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • C#異步下載文件

    C#異步下載文件

    這篇文章主要介紹了C#異步下載文件的相關資料,需要的朋友可以參考下
    2016-01-01
  • 異步/多線程/任務/并行編程之一:如何選擇合適的多線程模型?

    異步/多線程/任務/并行編程之一:如何選擇合適的多線程模型?

    本篇文章小編為大家介紹,異步/多線程/任務/并行編程之一:如何選擇合適的多線程模型?需要的朋友參考下
    2013-04-04
  • C# 調用WebService的方法

    C# 調用WebService的方法

    這篇文章主要介紹了C# 調用WebService的方法,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-08-08
  • C#文件管理類Directory實例分析

    C#文件管理類Directory實例分析

    這篇文章主要介紹了C#文件管理類Directory,非常實用,需要的朋友可以參考下
    2014-08-08
  • C#實現Json文件讀寫的方法代碼

    C#實現Json文件讀寫的方法代碼

    這篇文章主要給大家介紹了關于C#實現Json文件讀寫的相關資料,C# 讀取JSON文件并讀取某一個關鍵字的值可以使用Newtonsoft.Json庫,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • C#遞歸讀取XML菜單數據的方法

    C#遞歸讀取XML菜單數據的方法

    這篇文章主要介紹了C#遞歸讀取XML菜單數據的方法,涉及遞歸的操作技巧與C#窗體的用法,對于進行C#項目開發(fā)具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-12-12
  • C#WinFrom導出Excel過程解析

    C#WinFrom導出Excel過程解析

    這篇文章主要介紹了C#WinFrom導出Excel過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11

最新評論

灵石县| 成武县| 临汾市| 嵊泗县| 岳西县| 河池市| 平昌县| 乌拉特前旗| 抚宁县| 武城县| 潼关县| 津南区| 洛扎县| 镇安县| 扶余县| 太和县| 来宾市| 古丈县| 南丹县| 韶关市| 遂昌县| 武清区| 陇西县| 苏州市| 蛟河市| 滦平县| 安多县| 和顺县| 合作市| 潼关县| 新郑市| 集安市| 吉木乃县| 湘乡市| 安庆市| 家居| 息烽县| 洪湖市| 阿合奇县| 柳州市| 宁化县|