From 380d0e80ac5708f2e967b84361be68792fb16c23 Mon Sep 17 00:00:00 2001 From: Glavo Date: Thu, 17 Jun 2021 17:18:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/glavo/checksum/Hasher.java | 2 +- src/main/java/org/glavo/checksum/Main.java | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/glavo/checksum/Hasher.java b/src/main/java/org/glavo/checksum/Hasher.java index 19b78de..900430a 100644 --- a/src/main/java/org/glavo/checksum/Hasher.java +++ b/src/main/java/org/glavo/checksum/Hasher.java @@ -101,7 +101,7 @@ public int getHashStringLength() { public final String hashFile(Path file) throws IOException { MessageDigest md = localMessageDigest.get(); byte[] buffer = localBuffer.get(); - int read = 0; + int read; try (InputStream input = Files.newInputStream(file)) { do { read = input.read(buffer); diff --git a/src/main/java/org/glavo/checksum/Main.java b/src/main/java/org/glavo/checksum/Main.java index d507ee5..8f90665 100644 --- a/src/main/java/org/glavo/checksum/Main.java +++ b/src/main/java/org/glavo/checksum/Main.java @@ -7,6 +7,7 @@ import java.util.TreeMap; import java.util.concurrent.*; import java.util.concurrent.atomic.LongAdder; +import java.util.stream.Collectors; public final class Main { @@ -294,13 +295,14 @@ private static void verify(Path basePath, BufferedReader reader, Hasher hasher, }); } final Hasher finalHasher = hasher; - pool.submit(() -> reader.lines().parallel() - .filter(line -> !line.isEmpty()) + pool.submit(() -> reader.lines().collect(Collectors.toList()).stream().parallel() .forEach(line -> { - if (verifyFile(basePath, line, finalHasher)) { - successCount.add(1); - } else { - failureCount.add(1); + if (!line.isEmpty()) { + if (verifyFile(basePath, line, finalHasher)) { + successCount.add(1); + } else { + failureCount.add(1); + } } })).get();