/** * 对文件进行 MD5 加密 * * @param file * 待加密的文件 * * @return 文件加密后的 MD5 值 * @throws IOException */ public static String md5(File file) throws IOException { FileInputStream is = new FileInputStream(file); char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; MessageDigest md5 = null; try { md5 = MessageDigest.getInstance("MD5"); int n = 0; byte[] buffer = new byte[1024]; do { n = is.read(buffer); if (n > 0) { md5.update(buffer, 0, n); } } while (n != -1); is.skip(0); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); throw new RuntimeException(e.getMessage()); } finally { is.close(); } byte[] encodedValue = md5.digest(); int j = encodedValue.length; char finalValue[] = new char[j * 2]; int k = 0; for (int i = 0; i < j; i++) { byte encoded = encodedValue[i]; finalValue[k++] = hexDigits[encoded >> 4 & 0xf]; finalValue[k++] = hexDigits[encoded & 0xf]; } String s=new String(finalValue); System.out.println("md5:"+s); System.out.println("lenth:"+s.length()); return s; }
java对文件进行md5加密,对文件进行 MD5 加密
最新推荐文章于 2024-07-10 03:17:51 发布