亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C# 如何判斷兩個文件內(nèi)容是否相同的方法

 更新時間:2013年05月01日 14:24:42   作者:  
使用System.security.Cryptography.HashAlgorithm類為每個文件生成一個哈希碼,然后比較兩個哈希碼是否相同

該哈希算法為一個文件生成一個小的二進(jìn)制“指紋”,從統(tǒng)計學(xué)的角度來看,不同的文件不可能生成相同的哈希碼

要生成一個哈希碼,必須首先創(chuàng)建一個HashAlgorithm對象,通過HashAlgorithm.Create方法來完成。然后調(diào)用

HashAlgorithm.ComputeHash方法,它會返回一個存儲哈希碼的字節(jié)數(shù)組,再使用BitConverter.Tostring()將其

裝換為字符串進(jìn)行比較。

源碼如下:

復(fù)制代碼 代碼如下:

public static bool isValidFileContent(string filePath1, string filePath2)
       {
           //創(chuàng)建一個哈希算法對象
           using (HashAlgorithm hash = HashAlgorithm.Create())
           {
               using (FileStream file1 = new FileStream(filePath1, FileMode.Open),file2=new FileStream(filePath2,FileMode.Open))
               {
                   byte[] hashByte1 = hash.ComputeHash(file1);//哈希算法根據(jù)文本得到哈希碼的字節(jié)數(shù)組
                   byte[] hashByte2 = hash.ComputeHash(file2);
                   string str1 = BitConverter.ToString(hashByte1);//將字節(jié)數(shù)組裝換為字符串
                   string str2 = BitConverter.ToString(hashByte2);
                   return (str1==str2);//比較哈希碼
               }
           }
       }

使用該函數(shù)的主函數(shù)

復(fù)制代碼 代碼如下:

static void Main(string[] args)
     {
         string filePath1 = @"f:/1.txt";
         string filePath2 = @"f:/2.txt";
         bool valid=isValidFileContent(filePath1, filePath2);
         Console.WriteLine(valid.ToString());
         Console.ReadKey();
     }

相關(guān)文章

  • C# 模擬瀏覽器并自動操作的實例代碼

    C# 模擬瀏覽器并自動操作的實例代碼

    這篇文章主要介紹了C# 模擬瀏覽器并自動操作的實例代碼,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • C# Socket編程實現(xiàn)簡單的局域網(wǎng)聊天器的示例代碼

    C# Socket編程實現(xiàn)簡單的局域網(wǎng)聊天器的示例代碼

    這篇文章主要介紹了C# Socket編程實現(xiàn)簡單的局域網(wǎng)聊天器,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • C#實現(xiàn)簡單的計算器功能

    C#實現(xiàn)簡單的計算器功能

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)簡單的計算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 基于C#實現(xiàn)端口掃描器(單線程和多線程)

    基于C#實現(xiàn)端口掃描器(單線程和多線程)

    本文主要介紹了基于C#分別通過單線程和多線程實現(xiàn)端口掃描,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • C#?wpf實現(xiàn)任意控件更多拖動功能

    C#?wpf實現(xiàn)任意控件更多拖動功能

    這篇文章主要為大家詳細(xì)介紹了C#?wpf如何實現(xiàn)任意控件(包括窗口)更多拖動功能,文中的示例代碼講解詳細(xì),有興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11
  • C#編寫COM組件的方法分析

    C#編寫COM組件的方法分析

    這篇文章主要介紹了C#編寫COM組件的方法,結(jié)合實例形式分析了C#編寫COM組件的具體步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • C#操作LINQ to SQL組件進(jìn)行數(shù)據(jù)庫建模的基本教程

    C#操作LINQ to SQL組件進(jìn)行數(shù)據(jù)庫建模的基本教程

    這篇文章主要介紹了C#操作LINQ to SQL組件進(jìn)行數(shù)據(jù)庫建模的基本教程,LINQ to SQL被集成在.NET框架之中,需要的朋友可以參考下
    2016-03-03
  • C#中寫入和讀取TXT文件問題

    C#中寫入和讀取TXT文件問題

    這篇文章主要介紹了C#中寫入和讀取TXT文件問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • 詳解C#實例化對象的三種方式及性能對比

    詳解C#實例化對象的三種方式及性能對比

    這篇文章主要介紹了C#實例化對象的三種方式及性能對比,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • C#中倒計時功能的優(yōu)化方法小結(jié)

    C#中倒計時功能的優(yōu)化方法小結(jié)

    這篇文章主要為大家詳細(xì)介紹了當(dāng)C#重復(fù)使用一段代碼倒計時時,如何使用普通類和靜態(tài)方法,實現(xiàn)簡單的代碼封裝性、可擴(kuò)展性、可維護(hù)性,感興趣的可以了解下
    2024-01-01

最新評論