可参考:http://blog.csdn.net/hudashi/article/details/8394158

     /**
* 计算文件的MD5码
* @param file
* @return
*/
public static String getMD5(File file) {
FileInputStream fis = null;
try {
MessageDigest md = MessageDigest.getInstance("MD5");
fis = new FileInputStream(file);
byte[] buffer = new byte[8192];
int length = -1;
System.out.println("开始算");
while ((length = fis.read(buffer)) != -1) {
md.update(buffer, 0, length);
}
System.out.println("算完了");
return bytesToString(md.digest());
} catch (IOException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (NoSuchAlgorithmException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
return null;
} finally {
try {
fis.close();
} catch (IOException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
}
}
} /**
* 得到文件的SHA码,用于校验
* @param file
* @return
*/
public static String getSHA(File file) {
FileInputStream fis = null;
try {
MessageDigest md = MessageDigest.getInstance("SHA");
fis = new FileInputStream(file);
byte[] buffer = new byte[8192];
int length = -1;
System.out.println("开始算");
while ((length = fis.read(buffer)) != -1) {
md.update(buffer, 0, length);
}
System.out.println("算完了");
return bytesToString(md.digest());
} catch (IOException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (NoSuchAlgorithmException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
return null;
} finally {
try {
fis.close();
} catch (IOException ex) {
Logger.getLogger(MD5Util.class.getName()).log(Level.SEVERE, null, ex);
}
}
}

Java计算文件的SHA码和MD5码的更多相关文章

  1. 【转】Java计算文件的hash值

    原文地址:http://blog.csdn.net/qq_25646191/article/details/78863110 如何知道一个文件是否改变了呢?当然是用比较文件hash值的方法,文件has ...

  2. Java计算文件MD5值(支持大文件)

    import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.securit ...

  3. Java计算文件MD5值代码

    原文:http://www.open-open.com/code/view/1424930488031 import java.io.File; import java.io.FileInputStr ...

  4. java 计算 文件 md5

    public class MD5Check { /** * 默认的密码字符串组合,用来将字节转换成 16 进制表示的字符,apache校验下载的文件的正确性用的就是默认的这个组合 */     pro ...

  5. JAVA计算文件的crc32校验码

    import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java ...

  6. java计算文件32位md5值

    protected static String getFileMD5(String fileName) { File file = new File(fileName); if(!file.exist ...

  7. Java计算文件或文件夹大小

    导入此类后,直接调用FilesUtil.returnSizi(String path),即可获取文件或者文件夹大小. 代码: 1 /** 2 * 路人甲操作文件的工具类 3 * returnSizi( ...

  8. ashx实现文件下载以及文件MD5码测试

    cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System ...

  9. HTML5 file api读取文件的MD5码工具

    1.工具的用途:用HTML5 file api读取文件的MD5码.MD5码在文件的唯一性识别上有很重要的应用,业内常用MD5进行文件识别.文件秒传.文件安全性检查等: 2.适用性:IE.Chrome皆 ...

随机推荐

  1. C++11 能好怎?

    0. 摘要 近期读了一些关于C++11标准的材料. 本篇博客将从新标准的优点.与旧版本的区别和使用方法三个角度,大致介绍我对C++11的认识. C++11标准,原名C++0x, 是03版旧标准的更新. ...

  2. 软件工程——PairProject

    结对编程组员: 马辰     11061178 柴泽华  11061153 1)    照至少一张照片, 展现两人在一起合作编程的情况. 结对编程的优点 1)在编程过程中,任何一段代码都不断地复审,同 ...

  3. jQuery基础学习1

    标准HTML文件引入jQuery库方法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...

  4. 转载C# 对象转Json序列化

    转载原地址:  http://www.cnblogs.com/plokmju/p/ObjectByJson.html JSON Json(JavaScript Object Notation) 是一种 ...

  5. 新手一步一步OpenCV+Win7+Visual Studio 2013环境配置

    地点:湖南大学软件大楼211 时间:2013.12.19 昨天导师布置了个任务,要求是找出用相机拍出同一移动场景下的两张照片,计算机能根据其中的差异计算场景移动的距离和旋转角度.据说以前很牛逼的师兄完 ...

  6. C++中用二维数组传参时形参该怎样写[转]

    二维数组的存储方式是和一维数组没什么区别,但是用二维数组做参数,它的形参该怎样写? 要注意的是:函数中的形参其实就相当于一个声明,并不产生内存分配,形参的目的就是要让编译器知道函数参数的数据类型. 正 ...

  7. Oracle数据库文件恢复与备份思路

    怎样才能对Oracle数据库进行备份?如何才能对删除的数据再进行恢复?这是困扰着很多人的问题.大家都知道,任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操 ...

  8. Codeforces Gym 100286G Giant Screen 水题

    Problem G.Giant ScreenTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/con ...

  9. string <-> wstring

    // std::string -> std::wstringstd::string s("string");std::wstring ws;ws.assign(s.begin ...

  10. 使用sql生成UUID

    在SQLServer中使用该sql语句可以生成GUID:select cast(NEWID() as varchar(36)) as uuid 通过一下语句将GUID中的'-'字符去掉: select ...