`
ztttly
  • 浏览: 94102 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

如何将两个文件的内容进行比较

 
阅读更多
使用目的:
在扫描某些文件的同时,或者需要反复读取某些文件。又是需要顾及程序的效率问题。
在你反复读取的文件中可能这一时间段和下一时间段的文件是同一个文件。
而且这些文件极有可能是完全相同的文件。
针对这些文件,有时我们只需要检测一下文件的内容是否和上一版本一致,不一致的文件我们读取,如果和上一版本一致的话,我们就可以不用让程序执行大段的代码耗费资源读取了。
这里有一个小思路,是比较文件内容的。
通过MD5的方式进行比较。
public static String getFileMD5(File file) {
if (!file.isFile()) {
return null;
}
MessageDigest digest = null;
FileInputStream in = null;
byte buffer[] = new byte[1024];
int len;
try {
digest = MessageDigest.getInstance("MD5");
in = new FileInputStream(file);
while ((len = in.read(buffer, 0, 1024)) != -1) {
digest.update(buffer, 0, len);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
return null;
}
BigInteger bigInt = new BigInteger(1, digest.digest());
return bigInt.toString(16);
}
方法说明,该方法通过读取该文件,返回一个字符串。
那么新旧版本的文件通过equals就可以判断是否一样了。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics