From 9ed198a360cca32f6845920defb578247400a57a Mon Sep 17 00:00:00 2001 From: fengyarnom Date: Wed, 6 Nov 2024 17:08:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8try-with-resources=E5=A4=84?= =?UTF-8?q?=E7=90=86Stream?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/util/WarningLogExecutor.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/sec-common/src/main/java/com/imdroid/common/util/WarningLogExecutor.java b/sec-common/src/main/java/com/imdroid/common/util/WarningLogExecutor.java index feaf22bc..f2e6e47b 100644 --- a/sec-common/src/main/java/com/imdroid/common/util/WarningLogExecutor.java +++ b/sec-common/src/main/java/com/imdroid/common/util/WarningLogExecutor.java @@ -8,6 +8,7 @@ import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.ConcurrentHashMap; import java.util.stream.Collectors; +import java.util.stream.Stream; public class WarningLogExecutor { @@ -32,14 +33,15 @@ public class WarningLogExecutor { initializeWarningFile(warningFile, keyword, warningTypeName); } - // 找到日志文件 - List logFiles = Files.list(Paths.get(logDirectory)) - .filter(Files::isRegularFile) - .filter(path -> path.getFileName().toString().matches("sideslopertcm(\\.\\d{4}-\\d{2}-\\d{2}\\.\\d+)?\\.log")) - .collect(Collectors.toList()); + try (Stream logFilesStream = Files.list(Paths.get(logDirectory))) { + List logFiles = logFilesStream + .filter(Files::isRegularFile) + .filter(path -> path.getFileName().toString().matches("sideslopertcm(\\.\\d{4}-\\d{2}-\\d{2}\\.\\d+)?\\.log")) + .collect(Collectors.toList()); - for (Path logFile : logFiles) { - executor.submit(() -> processFile(logFile, keyword, warningTypeName, warningFile)); + for (Path logFile : logFiles) { + executor.submit(() -> processFile(logFile, keyword, warningFile)); + } } } catch (IOException e) { e.printStackTrace(); @@ -67,7 +69,7 @@ public class WarningLogExecutor { } } - private void processFile(Path logFile, String keyword, String warningTypeName, Path warningFile) { + private void processFile(Path logFile, String keyword, Path warningFile) { try (BufferedReader reader = Files.newBufferedReader(logFile); BufferedWriter writer = Files.newBufferedWriter(warningFile, StandardOpenOption.CREATE, StandardOpenOption.APPEND)) {