0
我寫了下面的程序作爲一個快速實驗使用他們的MD5哈希斯卡拉文件散列
import java.nio.file.{Files, Paths}
import java.security.MessageDigest
object Test {
def main(args: Array[String]) = {
val startTime = System.currentTimeMillis();
val byteArray = Files.readAllBytes(Paths.get("/Users/amir/pgns/bigPGN.pgn"))
val endTime = System.currentTimeMillis();
println("Read file into byte " +byteArray+ " in " + (endTime - startTime) +" ms");
val startTimeHash = System.currentTimeMillis();
val hash = MessageDigest.getInstance("MD5").digest(byteArray)
val endTimeHash = System.currentTimeMillis();
System.out.println("hashed file into " +hash+ " in " +(endTime - startTime)+ " ms");
}
}
進行重複數據刪除的文件,我注意到,當我的PGN文件大約爲1.5 GB的文本數據,它大約需要2.5秒來讀取文件,2.5秒來散列它。
我的問題是,如果我有大量的文件,是否有更快的方法來做到這一點?
這種方法似乎可以減少我盒子上的總時間50%!很酷,謝謝。 –