包含java獲取文件md5碼的詞條

本文目錄一覽:

Java,如何獲取文件的MD5值

package cdm;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.math.BigInteger;

import java.nio.MappedByteBuffer;

import java.nio.channels.FileChannel;

import java.security.MessageDigest;

import org.apache.commons.codec.digest.*;

import org.apache.commons.io.IOUtils;

public class testMD5 {

public static String getMd5ByFile(File file) throws FileNotFoundException {

String value = null;

FileInputStream in = new FileInputStream(file);

try {

MappedByteBuffer byteBuffer = in.getChannel().map(FileChannel.MapMode.READ_ONLY, 0, file.length());

MessageDigest md5 = MessageDigest.getInstance(“MD5”);

md5.update(byteBuffer);

BigInteger bi = new BigInteger(1, md5.digest());

value = bi.toString(16);

} catch (Exception e) {

e.printStackTrace();

} finally {

if(null != in) {

try {

in.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return value;

}

public static void main(String[] args) throws IOException {

String path=”E:\文件.zip”;

String v = getMd5ByFile(new File(path));

System.out.println(“MD5:”+v.toUpperCase());

FileInputStream fis= new FileInputStream(path);

String md5 = DigestUtils.md5Hex(IOUtils.toByteArray(fis));

IOUtils.closeQuietly(fis);

System.out.println(“MD5:”+md5);

//System.out.println(“MD5:”+DigestUtils.md5Hex(“WANGQIUYUN”));

}

}

java 獲取1G文件md5 要多久

我使用了部分取值的方式來提高MD5的計算速度,這樣的時候,時間主要耗費在了IO中。如果是100K(換成500K也並沒有提高執行的速度)取一個字符計算大約10秒以內。但是如果全部讀取可能要60秒或者更多。對於大文件建議使用一些文件相關信息和部分文件內容做MD5.比如用文件長度和一定間隔取一些字節。

java 有哪些jar包直接提供了獲得md5值的方法?

需要導入一個jar包:commons-codec

代碼如下:

import org.apache.commons.codec.digest.DigestUtils; 

public class ToMain {

public static void main(String[] args) {

System.out.println(DigestUtils.md5Hex(“baidu.com”));

}

}

1、Java

Java是一種可以撰寫跨平台應用軟件的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、遊戲控制台、科學超級計算機、移動電話和互聯網,同時擁有全球最大的開發者專業社群。

2、名字來源

Java是印度尼西亞爪哇島的英文名稱,因盛產咖啡而聞名。Java語言中的許多庫類名稱,多與咖啡有關:如JavaBeans(咖啡豆)、NetBeans(網絡豆)以及ObjectBeans(對象豆)等等。SUN和JAVA的標識也正是一杯正冒着熱氣的咖啡。

原創文章,作者:ET4KW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127801.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
ET4KW的頭像ET4KW
上一篇 2024-10-03 23:16
下一篇 2024-10-03 23:16

相關推薦

發表回復

登錄後才能評論