一:通過比對MD5值
public static String getFileMD5(File file) {
if (!file.isFile()) {
return null;
}
// 創建MessageDigest對象,添加MD5處理
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());
System.out.println(bigInt);
// 返回16進製表示形式
return bigInt.toString(16);
}
public static void main(String[] args) {
File file1 = new File("134567876fhjkh.jpg");
// String s = file1.getPath();
File file2 = new File("2.jpg");
String fileMD5 = getFileMD5(file1);
String fileMD52 = getFileMD5(file2);
System.out.println(file1.getName() + " 的MD5值是:" + fileMD5);
System.out.println(file2.getName() + " 的MD5值是:" + fileMD52);
if (fileMD5.equals(fileMD52)) {
System.out.println("兩張圖片一致..");
} else {
System.out.println("兩張圖片不一致...");
}
}