使用System.security.Cryptography.HashAlgorithm类为每个文件生成一个哈希码,然后比较两个哈希码是否相同。

该哈希算法为一个文件生成一个小的二进制“指纹”,从统计学的角度来看,不同的文件不可能生成相同的哈希码

要生成一个哈希码,必须首先创建一个HashAlgorithm对象,通过HashAlgorithm.Create方法来完成。然后调用

HashAlgorithm.ComputeHash方法,它会返回一个存储哈希码的字节数组,再使用BitConverter.Tostring()将其

装换为字符串进行比较。

源码如下:

 public static bool isValidFileContent(string filePath1, string filePath2){//创建一个哈希算法对象using (HashAlgorithm hash = HashAlgorithm.Create()){using (FileStream file1 = new FileStream(filePath1, FileMode.Open),file2=new FileStream(filePath2,FileMode.Open)){byte[] hashByte1 = hash.ComputeHash(file1);//哈希算法根据文本得到哈希码的字节数组byte[] hashByte2 = hash.ComputeHash(file2);string str1 = BitConverter.ToString(hashByte1);//将字节数组装换为字符串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();}

  

转载于:https://www.cnblogs.com/luodao1991/archive/2013/05/01/3052771.html

C#基础之如何判断两个文件内容是否相同相关推荐

  1. linux判断两个文件内容,shell怎么判断两个文件内容是否相同

    #cat diff_two_file #/bin/sbin file1=/mnt/mmc/test/aa file2=/mnt/mmc/test/bb diff $file1 $file2 > ...

  2. Python判断两个文件夹中互相不同的文件有哪些、判断一个文件夹相对于另外一个文件夹缺少了哪些文件

    Python判断两个文件夹中互相不同的文件有哪些.判断一个文件夹相对于另外一个文件夹缺少了哪些文件 目录 Python判断两个文件夹中互相不同的文件有哪些.判断一个文件夹相对于另外一个文件夹缺少了哪些 ...

  3. python判断相同,Python判断两个文件是否相同与两个文本进行相同项筛选的方法

    python判断两个文件是否相同 import hashlib def gethash(f): line=f.readline() hash=hashlib.md5() while(line): ha ...

  4. python文件比较,判断两个文件是否相同

    # 判断两个文件是否相同.要求用函数实现文件比较功能,在main函数中进行验证. # 下述函数完成文件是否相同的比较功能 def compareFile(file1,file2):#请在此添加代码,实 ...

  5. c语言 判断两个文件是否相同

    文章目录 前言 一.代码 二.示例 总结 前言 在实际开发的时候有时需要比较文件是否相同,生成md5摘要比较固然是比较好的方法,有时只是需要写个简单的测试程序,在c语言引入md5库就有点麻烦了,直接比 ...

  6. jq 比较两个时间是否在同一天_.NET CORE下最快比较两个文件内容是否相同的方法...

    最近项目有个需求,需要比较两个任意大小文件的内容是否相同,要求如下: 项目是.NET CORE,所以使用C#进行编写比较方法 文件大小任意,所以不能将文件内容全部读入到内存中进行比较(更专业点说,需要 ...

  7. .NET CORE下最快比较两个文件内容是否相同的方法

    最近项目有个需求,需要比较两个任意大小文件的内容是否相同,要求如下: 项目是.NET CORE,所以使用C#进行编写比较方法 文件大小任意,所以不能将文件内容全部读入到内存中进行比较(更专业点说,需要 ...

  8. Linux 基础命令——比较两个文件内容的不同

    语法]: diff [参数] 文件1 文件2 [说明]: 本命令比较两个文本文件,将不同的行列出来 -b 将一串空格或TAB 转换成一个空格或TAB -e 生成一个编辑角本,作为ex 或ed 的输入可 ...

  9. Python Tips 01 : 判断两个文件是否相同

    python中提供了很便捷的方法来判断两个文件的内容是否相同,只要两行代码: import filecmp filecmp.cmp(r'e:\1.txt',r'e:\2.txt') 如果两个文件相同, ...

最新文章

  1. CICC科普栏目丨时间之箭:从熵到大爆炸再到万物理论(一)
  2. HTML学习01之初识HTML
  3. lucky number
  4. Oracle 把游标说透
  5. Angular2 从搭建环境到开发
  6. hadoop yarn 获取日志_Hadoop YARN配置参数剖析(2)—权限与日志聚集相关参数
  7. python相比于excel的优势_对照Excel使用Python进行数据分析,更快掌握
  8. linux网络IO模型
  9. Android开发笔记(一百零五)社会化分享SDK
  10. 数据结构与算法的分析
  11. Elastic-Job | 由浅入深一篇理解分布式定时任务的基本用法及简单原理解析
  12. 万兆交换机用什么网线_现在国内没有万兆宽带,那为什么有万兆网线呢?
  13. html阅读模式怎么进入word模式,word阅读模式怎么取消
  14. 会php学java入门要多久_php自学需要多久
  15. vb.net 编写的简易串口调试程序
  16. Redis(服务端/客户端)的启动、关闭、查看状态
  17. manjaro 显卡驱动
  18. jvm虚拟机基础知识--、java内存区域(1)
  19. 大学英语四级翻译技巧讲解
  20. 大型企业网络安全解决方案

热门文章

  1. 买房贷款时为什么银行让客户选等额本息,这是不是个坑?
  2. 有钱了该不该提前还清房贷?
  3. 一部珍贵的130位作家的手稿集
  4. VHDL程序基本构建
  5. stright 在mysql_MySQL优化的奇技淫巧之STRAIGHT_JOIN
  6. sql server cdc 清理_基于CDC技术的ElasticSearch索引同步机制
  7. 删除 索引 外键 mysql_MySQL无法删除外键约束中所需的索引
  8. mysql innodb myisam 混合,MySQL MyIsam/InnoDB混合在一起的事务
  9. NIPS 2016 Highlighted Papers
  10. win32框架,GDI图形编程写一个HelloWorld游戏_c语言