如何比较任何类型的两个文件的内容完全相同 如何比较任何类型的两个文件的内容完全相同 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用StreamReader一行行读取,然后一行行比较就可以了。 任何类型你觉得txt和doc内部的内容就算一样,机器能判断出来? txt和doc就算文本一样。流也不一样啊 读出来转化成 string 比较 是任何类型的同一种类型进行比较,比如doc,doctxt,txtzip,zipmp3,mp3.......... 如果是比较是否为同一个文件,可以计算两个或多个文件的MD5值,来比较它们的MD5是否相同,如果这个相同,那么就是完全相同,也就是同一个文件。至于内容,txt 和 doc的文件结构都不一样哦~~[align=center]********************************************************本内容用 CSDN小秘书 回复每天回帖即可获得10分可用分!********************************************************[/align] System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();string fileName1 = "C:\\test1.txt";string fileName2 = "C:\\dbg.log"; //C:\\test2.txt";byte[] buffer1 = System.IO.File.ReadAllBytes(fileName1);byte[] buffer2 = System.IO.File.ReadAllBytes(fileName2);byte[] key1 = md5.ComputeHash(buffer1);byte[] key2 = md5.ComputeHash(buffer2);StringBuilder sb1 = new StringBuilder();StringBuilder sb2 = new StringBuilder();for (int i = 0; i < key1.Length; i++){ sb1.Append(key1[i].ToString("x2"));}for (int i = 0; i < key2.Length; i++){ sb2.Append(key2[i].ToString("x2"));}Console.WriteLine("{0}, {1}, {2}", sb1.ToString(), sb2.ToString(), sb1.ToString() == sb2.ToString()); md5public static string HashFile(string fileName, string algName) { if (!System.IO.File.Exists(fileName)) return string.Empty; FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read); byte[] hashBytes = HashData(fs, algName); fs.Close(); return ByteArrayToHexString(hashBytes); } 请问,ByteArrayToHexString(hashBytes)、 HashData(fs, algName)这两个函数哪里来 webbrowser问题 如何判断DataRow 里有没有指定的列名? C#应用程序,如何实现退出系统这个按钮的功能【求帮助】 C# QQ密码连接问题 toolStrip上有一个 toolStripTextBox如何简便的让这个Textbox能做为密码框使用 怎么通过手写实现控件? 文件双向同步 基于FileSystemWatcher 有没有懂日语的.net的高级程序员? Form1上有一个编辑框TextBox1,如何让它跟一个数据库的字段关联上? 关于DataSet的排序问题!!!看了网上的方法,为什么还是没用!! 从新上路该学啥? using会不会影响效率
流也不一样啊
是任何类型的同一种类型进行比较,比如
doc,doc
txt,txt
zip,zip
mp3,mp3
..........
至于内容,txt 和 doc的文件结构都不一样哦~~[align=center]********************************************************
本内容用 CSDN小秘书 回复
每天回帖即可获得10分可用分!
********************************************************
[/align]
System.Security.Cryptography.MD5 md5 =
System.Security.Cryptography.MD5.Create();string fileName1 = "C:\\test1.txt";
string fileName2 = "C:\\dbg.log"; //C:\\test2.txt";byte[] buffer1 = System.IO.File.ReadAllBytes(fileName1);
byte[] buffer2 = System.IO.File.ReadAllBytes(fileName2);byte[] key1 = md5.ComputeHash(buffer1);
byte[] key2 = md5.ComputeHash(buffer2);StringBuilder sb1 = new StringBuilder();
StringBuilder sb2 = new StringBuilder();for (int i = 0; i < key1.Length; i++)
{
sb1.Append(key1[i].ToString("x2"));
}for (int i = 0; i < key2.Length; i++)
{
sb2.Append(key2[i].ToString("x2"));
}Console.WriteLine("{0}, {1}, {2}",
sb1.ToString(), sb2.ToString(), sb1.ToString() == sb2.ToString());
public static string HashFile(string fileName, string algName)
{
if (!System.IO.File.Exists(fileName))
return string.Empty; FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
byte[] hashBytes = HashData(fs, algName);
fs.Close();
return ByteArrayToHexString(hashBytes);
}
请问,ByteArrayToHexString(hashBytes)、 HashData(fs, algName)这两个函数哪里来