获取文件的MD5
//计算文件(MultipartFile)的MD5
private String getFileMd5(MultipartFile file) {
byte[] uploadBytes = file.getBytes();
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
byte[] digest = messageDigest.digest(uploadBytes);
String fileMd5 = new BigInteger(1, digest).toString(16);
return fileMd5;
}
//计算文件(File)的MD5
private String getFileMd5(File file) {
InputStream fis = null;
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
fis = new FileInputStream(file);
byte[] buffer = new byte[1024];
int numRead = 0;
while ((numRead = fis.read(buffer)) > 0) {
md5.update(buffer, 0, numRead);
}
if (fis != null) {
fis.close();
}
} catch (Exception ex) {
ex.printStackTrace();
}
return toHexStrings(md5.digest()) ;
}