请选择 进入手机版 | 继续访问电脑版

登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 265|回复: 0

【Java】获取文件MD5值

[复制链接]

441

主题

506

帖子

1944

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1944

荣誉管理论坛元老

发表于 2021-6-30 22:16:04 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. public static String getMD5(File file)
    # p$ m0 H7 }2 G8 g4 s
  2.         {
    9 e8 _# H0 L' c& H
  3.                 String md5 = "";" s5 {: e$ M% E
  4.                 try " n" T  N: i' _9 g7 T5 a
  5.                 {
    / j1 A7 l. A" \4 _  G9 X  H
  6.             FileInputStream fis = new FileInputStream(file);" `# t( D9 j" r
  7.             MessageDigest md = MessageDigest.getInstance("MD5");
    / b% ]: G4 `, w+ ~2 X) X( N
  8.             byte[] buffer = new byte[1024];
    2 ~. m8 \" ]/ {2 @
  9.             int length = -1;( f7 ]3 z& V5 E0 Y' U5 I5 ]0 p
  10.             while ((length = fis.read(buffer, 0, 1024)) != -1)  g  J& @2 [% S& p
  11.                         {
    * M& \# {: t" W9 O
  12.                 md.update(buffer, 0, length);4 |. f% k2 x5 X4 G4 Q) K7 v; s
  13.             }
    - ?  z8 p& y) {# L4 N$ S
  14.             BigInteger bigInt = new BigInteger(1, md.digest());& Y4 ~& P: @: v( v
  15.                         md5 = bigInt.toString(16);- _2 n1 h' k4 _4 }
  16.         } catch (FileNotFoundException e) {; t. l1 ]* \  D! i7 k
  17.             e.printStackTrace();2 N$ C, W5 G7 i" R; t, L; B
  18.         } catch (NoSuchAlgorithmException e) {' l! {) H' \$ q: b( j
  19.             e.printStackTrace();# V1 D- w) x; q6 ~. V6 u
  20.         } catch (IOException e) {# u+ K! O* s* b, W8 t
  21.             e.printStackTrace();6 U- Y% O9 M/ ?- a6 ]/ ]; h( c# l# D
  22.         }
    - r+ v+ U; ^3 \: W
  23.                 return md5;% t# F& c# _0 `5 ?( w
  24.     }
    5 u# ~% L- t2 H2 E- f/ `) C( A
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区

GMT+8, 2022-8-11 22:14 , Processed in 0.088728 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表