<pre>public static String getFileDigest(String fileNameWithPath, String algorithm) throws NoSuchAlgorithmException,
IOException {
// 缓冲区大小(这个可以抽出一个参数)
int bufferSize = 256 * 1024;
int len = 1;
MessageDigest messageDigest;
messageDigest = MessageDigest.getInstance(algorithm);
FileInputStream fileInputStream;
DigestInputStream digestInputStream;
fileInputStream = new FileInputStream(fileNameWithPath);
digestInputStream = new DigestInputStream(fileInputStream, messageDigest);
byte[] buffer = new byte[bufferSize];
while (len > 0) {
len = digestInputStream.read(buffer);
}
// 获取最终的MessageDigest
messageDigest = digestInputStream.getMessageDigest();
// 拿到结果,也是字节数组,包含16个元素
byte[] resultByteArray = messageDigest.digest();
// 同样,把字节数组转换成字符串
fileInputStream.close();
digestInputStream.close();
return parseByte2HexStr(resultByteArray);
}</pre>
代码片段: 文件的md5值-gistfile1.txt
public static String getFileDigest(String fileNameWithPath, String algorithm) throws NoSuchAlgorithmException,
IOException {
// 缓冲区大小(这个可以抽出一个参...
- 发表于 2018-07-07 13:00
- 阅读 ( 577 )
- 分类:代码片段
你可能感兴趣的文章
- Java 添加条码、二维码到PDF文档 134 浏览
- Java 在Excel中添加筛选器并执行筛选 91 浏览
- JAVA + VUE + 简洁UI:分离式软件平台形成之旅 265 浏览
- Java 设置Word中的表格自适应的3种方式 113 浏览
- LeaRun快速开发平台,.net/java项目开发工具简析 142 浏览
- JVM学习笔记之类装载器-ClassLoader 203 浏览
随机文章
- 微信支付:特约子商户商户号未授权服务商的产品权限 的解决方案 15101 浏览
- Python如何实现多重继承?Python开发学习 845 浏览
- 基于SpringBoot写的开源图床 2055 浏览
- @SpringBootApplication和@Configuration、@EnableAutoConfiguration、@ComponentScan的联系 1267 浏览
- 在maven中加入tomcat的插件引用 1011 浏览
相关问题
- java基础知识提问 1 回答
条评论
请先 登录 后评论
发送私信
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!