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

C# 如何判斷兩個文件內容是否相同的方法

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

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

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

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

裝換為字符串進行比較。

源碼如下:

復制代碼 代碼如下:

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);//哈希算法根據文本得到哈希碼的字節(jié)數組
                   byte[] hashByte2 = hash.ComputeHash(file2);
                   string str1 = BitConverter.ToString(hashByte1);//將字節(jié)數組裝換為字符串
                   string str2 = BitConverter.ToString(hashByte2);
                   return (str1==str2);//比較哈希碼
               }
           }
       }

使用該函數的主函數

復制代碼 代碼如下:

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();
     }

相關文章

最新評論

阿合奇县| 故城县| 南汇区| 泽州县| 新巴尔虎右旗| 四川省| 黄大仙区| 靖远县| 静海县| 惠安县| 垦利县| 遂昌县| 应用必备| 樟树市| 故城县| 齐河县| 沈阳市| 南木林县| 沿河| 苍南县| 富平县| 塘沽区| 岐山县| 常熟市| 渝中区| 田东县| 阿拉善左旗| 泗水县| 承德市| 潼南县| 内丘县| 平利县| 峨山| 梧州市| 二连浩特市| 正阳县| 金昌市| 宣汉县| 济源市| 乌鲁木齐县| 历史|