博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java,如何获取文件的MD5值
阅读量:5787 次
发布时间:2019-06-18

本文共 946 字,大约阅读时间需要 3 分钟。

MessageDigest类封装得很不错,简单易用

不多说,直接上代码

import java.io.FileInputStream;
import java.security.MessageDigest;
import java.util.Scanner;

public class MD5Test {

public static void main(String[] args) {
System.out.print("输入文件名:");
Scanner inputFromConsole = new Scanner(System.in);
String filename = inputFromConsole.nextLine();
try (FileInputStream inputFromFile = new FileInputStream(filename)) {
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] buffer = new byte[10 * 1024 * 1024];
int byteCount;
while ((byteCount = inputFromFile.read(buffer)) != -1) {
md5.update(buffer, 0, byteCount);
}
StringBuilder result = new StringBuilder();
byte[] digested = md5.digest();
for (byte e : digested) {
String hexStr = Integer.toHexString(e & 255);
if (hexStr.length() == 1)
result.append('0');
result.append(hexStr);
}
System.out.println(result);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}

转载于:https://www.cnblogs.com/buyishi/p/8443563.html

你可能感兴趣的文章
RelativeLayout addRule踩坑之旅
查看>>
决定薪资高低的到底什么?
查看>>
Flutter入门进阶之旅(二)Hello Flutter
查看>>
Java 混淆那些事(五):ProGuard 其他的选项
查看>>
Tensorflow rnn-word2vec-电影评论
查看>>
为什么实验是领英 DNA 的核心部分?
查看>>
text-align-两端对齐
查看>>
每日一道算法题--leetcode 169--求众数--python--两种方法
查看>>
小程序排行榜
查看>>
区块链100讲:Vitalik Buterin-以太坊Casper惩罚条件的最小化
查看>>
解放双手,基于github travis-ci docker自动化部署java项目
查看>>
聊聊Elasticsearch的CachedSupplier
查看>>
安卓实现局部界面遮罩效果
查看>>
小编带着小白看springboot源码2
查看>>
Zeu.js 1.3.1 发布, 分布式系统可视化
查看>>
对象的生命周期
查看>>
正则中关于环视(lookaround)的小例子
查看>>
《Effective Java》--Java进阶必备
查看>>
Hexo + Github 搭建个人博客
查看>>
Node.js 实现类似于.php,.jsp的服务器页面技术,自动路由
查看>>