0
큰 파일의 체크섬을 만들고 싶습니다. 스레드 3 "스레드 예외" "java.lang.OutOfMemoryError와 : 너무 큰 필수 배열 크기"불행히도 넷빈즈 오류 표시큰 파일을 읽고 자바에서 체크섬을 만듭니다.
그래서 I 생각은 '바이트 [] = Files.readAllBytes 바이트 스트림 (경로); " 이것을 위해 작동하지 않습니다.
내 목표에 도달하는 가장 좋은 방법은 무엇인지 말해 줄 수 있습니까? 지금까지
내 코드 :
for (Path path : ArrayOfFilePathes) {
byte[] byteStream = Files.readAllBytes(path);
if (GUI.bMd5Selected == true) {
checksume = "MD5";
string = DigestUtils.md5Hex(byteStream);
}else{
checksume = "Sha256";
string = DigestUtils.sha256Hex(byteStream);
}
감사합니다!
가능한 [Java에서 파일의 MD5 체크섬 얻기] (http://stackoverflow.com/questions/304268/getting-a-files-md5-checksum-in-java) – MrTux
올바른 문제는 파일 .readAllBytes. InputStream을 사용하여 파일을 읽고 다이제스트를 즉석에서 계산해야합니다. MrTux 게시 한 링크의 상단 답변을 참조하십시오. – trooper