Я читаю несколько файлов (1000 файлов размером около 5 МБ) из папки. Приведенный ниже код прекрасно работает для чтения, загрузки и хранения содержимого файла.
public void readAllFiles(String path) {
try (Stream<Path> paths = Files.walk(Paths.get(path)).collect(toList()).parallelStream()) {
paths.forEach(filePath -> {
if (filePath.toFile().exists()) {
String fileName = filePath.getFileName().toString();
try {
List<String> loadedFile = readContent(filePath);
storeFiles(fileName, filePath, loadedFile);
} catch (Exception e) {
LOGGER.info("ERROR WHILE READING THE CONTENT OF FILE");
LOGGER.error(e.getMessage());
}
}
});
} catch (IOException e) {
LOGGER.info("ERROR WHILE READING THE FILES IN PARALLEL");
LOGGER.error(e.getMessage());
}
}
Моя проблема заключается в том, что при чтении файлов я хочу исключить некоторые файлы, например исключить чтение файла, если, например, условие удовлетворяет (имя файла содержит «ABC» && flag true))
Заранее спасибо за любые предложения.