计算文件MD5值的多种方法
方法一:CMD计算本地文件方法二:Java计算上传文件方法三:Java计算本地文件demo1demo2方法一:CMD计算本地文件
进入cmd,输入命令
// F:\a.txt是文件路径certutil -hashfile F:\a.txt MD5
如下所示:
方法二:Java计算上传文件
import org.springframework.web.multipart.MultipartFile;import java.security.MessageDigest;import java.io.File;public String geMD5(MultipartFile file) throws Exception {MessageDigest mMessageDigest = MessageDigest.getInstance("MD5");InputStream fis = file.getInputStream();byte[] buffer = new byte[1024];int length = -1;while ((length = fis.read(buffer, 0, 1024)) > 0) {mMessageDigest.update(buffer, 0, length);}fis.close();return new BigInteger(1, mMessageDigest.digest()).toString(16);}
方法三:Java计算本地文件
demo1
import mons.codec.binary.Hex;import java.security.MessageDigest;import java.io.File;import java.io.FileInputStream;private String getMD5(String filePath) throws Exception {File file = new File(filePath);FileInputStream fis= new FileInputStream(file);MessageDigest MD5 = MessageDigest.getInstance("MD5");byte[] buffer = new byte[1024];int length;while ((length = fis.read(buffer)) != -1) {MD5.update(buffer, 0, length);}fis.close();return new String(Hex.encodeHex(MD5.digest()));}
demo2
import mons.codec.binary.Hex;import java.security.MessageDigest;import java.io.File;import java.io.FileInputStream;private String getMD5(String filePath) throws Exception {File file = new File(filePath);MessageDigest MD5 = MessageDigest.getInstance("MD5");FileInputStream fis = new FileInputStream(file);byte[] buffer = new byte[1024];int length = -1;while ((length = fis.read(buffer, 0, 1024)) > 0) {MD5.update(buffer, 0, length);}fis.close();return new BigInteger(1, MD5.digest()).toString(16);}