当前位置:  编程技术>.net/c#/asp.net

C# 如何判断两个文件内容是否相同的方法

    来源: 互联网  发布时间:2014-10-19

    本文导语:  该哈希算法为一个文件生成一个小的二进制“指纹”,从统计学的角度来看,不同的文件不可能生成相同的哈希码 要生成一个哈希码,必须首先创建一个HashAlgorithm对象,通过HashAlgorithm.Create方法来完成。然后调用 HashAlgorithm.Com...

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

要生成一个哈希码,必须首先创建一个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();
     }


    
 
 

您可能感兴趣的文章:

  • C#判断日期是否到期的方法
  • C#实现判断图形文件格式的方法
  • C#判断数据类型的简单示例代码
  • c#判断正确的ip地址格式示例
  • c#判断网络连接状态的示例分享
  • c#简单判断是否是闰年的方法代码
  • C#利用反射来判断对象是否包含某个属性的实现方法
  • C#判断ip地址是否可以ping的通
  • c#判断字符是否为中文的三种方法分享(正则表达式判断)
  • php开源软件 iis7站长之家
  • c#判断输入内容是否数字的代码
  • C# 正则判断一个数字的格式是否有逗号的代码
  • C#中判断、验证字符串是否为日期格式的实现代码
  • C#中判断字符串是全角还是半角的实现代码
  • c#中判断字符串是不是数字或字母的方法
  • C#实现判断字符串中是否包含中文的方法
  • c#判断操作系统位数实例代码
  • c#判断操作系统位数的示例分享
  • C#三种判断数据库中取出的字段值是否为空(NULL) 的方法
  • C#判断某程序是否运行的方法
  • 急!有两个char buf[]里面是两个日期(2004-08-02),怎样判断两个日期之间的天数?(只能用标准C)
  • 两个 Socket 互相通信,其中一个如何判断另一个 Socket 是否已经意外断开了连接?
  • 如何判断两个目录名是不是同一个?
  • 有两个问题:如何判断本机IP地址和如何自动执行telnet脚本
  • java判断两个时间是不是同一天的方法
  • 如何判断两个时间的先后关系?
  • jsp中如何判断两个字符串不相等?
  • [请教]如何join命令将两个文件连接(当进行连接判断的字段是数值类型)
  • 我只用了一台电脑啊 ,两个系统(xp,ubuntu11.10),却被sb的联通公司判断为两台电脑,然后被封号了,怎么解决?避免被封号
  • unix shell中如何判断两个小数的大小
  • 现在两个字符串:str1="2002-10-30 12:45:00",str2="2002-12-14 08:09:20",请问怎样判断str1的日期是否在str2的日期之前还是之后?要不
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Vectors 成员 empty():判断Vector是否为空(返回true时为空)
  • linux->shell-> if 条件判断,关于软连接的判断!
  • javascript操作html复选框checkbox:如何判断复选框是否被选中
  • shell如何判断文件是否存在,如何判断变量是否为空
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 怎么判断串口已经收到数据,并及时读出?怎么判断串口已经将写入的数据发送完毕?
  • java实现判断字符串是否全是数字的四种方法代码举例
  • 在判断自符是否等于**时,用equals(“**”),那么如果我想判断它的值是否>=2该用什么呢?
  • 我是学pb的,判断闰年的是isdate("2-28"),但在java里怎么判断呢?
  • linux 下的自解压文件是什么格式,如何判断文件是否为自解压c++或者脚本判断均可
  • mysql中如何判断当前是字符 mysql判断字段中有无汉字
  • 知道TCP/UDP的包头,如何判断其应用层协议类型,struct tcphdr和 struct udphdr结构中那个变量能判断应用层协议类型。
  • 如何判断在线用户,主要是如何判断用户关闭所有窗口(即他已经不在线了)?
  • 如何判断一个数是否为4的幂次方?若是,并判断出来是多少次方?
  • 判断图片-判断位图是否是黑白图片的方法
  • JQuery 判断某个属性是否存在hasAttr用法
  • 请问如何判断一个文件夹是否存在
  • 判断文件格式的c库函数
  • sftp命令如何判断成功与否?
  • Shell条件判断疑问?
  • java判断远程服务器上的文件是否存在的方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3