一:通过比对MD5值

 public static String getFileMD5(File file) {if (!file.isFile()) {return null;}// 创建MessageDigest对象,添加MD5处理MessageDigest digest = null;FileInputStream in = null;byte buffer[] = new byte[1024];int len;try {digest = MessageDigest.getInstance("MD5");// 读取图片in = new FileInputStream(file);while ((len = in.read(buffer, 0, 1024)) != -1) {digest.update(buffer, 0, len);}in.close();} catch (Exception e) {e.printStackTrace();return null;}BigInteger bigInt = new BigInteger(1, digest.digest());System.out.println(bigInt);// 返回16进制表示形式return bigInt.toString(16);}public static void main(String[] args) {File file1 = new File("134567876fhjkh.jpg");// String s = file1.getPath();File file2 = new File("2.jpg");String fileMD5 = getFileMD5(file1);String fileMD52 = getFileMD5(file2);System.out.println(file1.getName() + " 的MD5值是:" + fileMD5);System.out.println(file2.getName() + " 的MD5值是:" + fileMD52);if (fileMD5.equals(fileMD52)) {System.out.println("两张图片一致..");} else {System.out.println("两张图片不一致...");}}

java通过比对MD5值判断是否是相同图片相关推荐

  1. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  2. 使用Java计算文件的MD5值(含修改MD5值的方法)

    什么是 MD5 ? MD5(Message Digest Algorithm,信息摘要算法),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保 ...

  3. JAVA 获取文件的MD5值大小以及常见的工具类

    1 /** 2 * 获取文件的MD5值大小 3 * 4 * @param file 5 * 文件对象 6 * @return 7 */ 8 public static String getMD5(Fi ...

  4. Java计算大文件md5值

    普通方式: JAVA自带的commons-codec包提供的获取16进制MD5值的方法 DigestUtils.md5Hex(new FileInputStream(path)); 但是对于大文件效率 ...

  5. Java如何获取MD5值

    MD5,Message Digest Algorithm 5,是一种被广泛使用的信息摘要算法,可以将给定的任意长度数据通过一定的算法计算得出一个 128 位固定长度的散列值.如百科介绍,MD5 具有如 ...

  6. Spring Boot——获取上传文件的MD5值解决方案

    解决方案 方法一: /*** 上传文件* @param file 文件* @return ResponseBean*/@ApiOperation(value = "上传文件",no ...

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

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

  8. Android开发——应用宝推广渠道出现MD5值重复,请勿重复上传

    起因 开发的小伙伴们,肯定遇到过运营的同学需要我们提供不同的推广渠道apk包.但是由于一些人为操作失误,会出现根据apk文件MD5值判断,该文件已经上传过了,请勿重复上传. 问题的出现 这是运营的同学 ...

  9. Java计算文件的hash值

    如何知道一个文件是否改变了呢?当然是用比较文件hash值的方法,文件hash又叫文件签名,文件中哪怕一个bit位被改变了,文件hash就会不同. 比较常用的文件hash算法有MD5和SHA-1. 我用 ...

最新文章

  1. 浅谈并发与并行(一)
  2. 来说一下Ansible的简明教程
  3. 在数组中找到第 k 小的数
  4. 阿里异地多活与同城双活的架构演进
  5. Python + Selenium 基础篇 - 打开和关闭浏览器
  6. java实现map和object互转
  7. cmake编译cocos2d-x报错
  8. 【精彩回顾】软件DevOps云化发展的趋势
  9. R-Sys.time计算程序运行时间
  10. laravel ::all() 选择字段_Laravel 性能优化:优化 ORM 性能使应用程序高可用
  11. 连续区间(数据岛)查询
  12. bzoj 3451 Normal
  13. (二)VISIO 中间带箭头的弧线怎么画
  14. 去天翎咨询myapps2.4的问题
  15. iOS - 内存管理
  16. 判决文书网爬虫获取vjkl5失败原因
  17. GlobalSign 企业型SSL 证书
  18. LTE学习笔记-3 OFDM
  19. 【shell】case实现简单的系统工具箱
  20. 牛客OR36 .链表的回文结构

热门文章

  1. Apache Doris三种数据模型(Aggregate、Uniq、Duplicate)的使用及其注意点
  2. 94.(leaflet之家)leaflet态势标绘-进攻方向绘制(燕尾)
  3. u盘怎么样在w ndows7上使用,用U盘给MAC BOOK AIR安装windows7系统
  4. ERP“创建会计科目”的请求数据量过大报黄
  5. Android外接midi设备的录音
  6. Fetch —— 中止尚未完成的接口请求
  7. 二.java-jak和jre安装与配置
  8. vue中插值语法中v-for() of 与v-for() in 遍历对象数组的异同,以及for in for of在方法中遍历对象和数组的异同
  9. [C#] C#深入浅出4th Edition [2]
  10. 北风:关于搜索引擎、关键词、流量的一些思考