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

使用目的:
在扫描某些文件的同时,或者需要反复读取某些文件。又是需要顾及程序的效率问题。
在你反复读取的文件中可能这一时间段和下一时间段的文件是同一个文件。
而且这些文件极有可能是完全相同的文件。
针对这些文件,有时我们只需要检测一下文件的内容是否和上一版本一致,不一致的文件我们读取,如果和上一版本一致的话,我们就可以不用让程序执行大段的代码耗费资源读取了。
这里有一个小思路,是比较文件内容的。
通过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就可以判断是否一样了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值