Удалить все файлы во вложенных папках с именем, содержащим «_bla»JAVA

Программисты JAVA общаются здесь
Anonymous
Удалить все файлы во вложенных папках с именем, содержащим «_bla»

Сообщение Anonymous »

У меня есть структура вложенных папок
Я хочу удалить все файлы (не папки) в этой структуре, которая содержит имя «_bla»
вот мой код, но он довольно громоздкий
Знаете ли вы более аккуратный способ сделать это?

Код: Выделить всё

cleanDirectoryAccordingToBlackList(Constants.RESOURCES_PATH, ImmutableList.of("_bla"));
и

Код: Выделить всё

  public void cleanDirectoryAccordingToBlackList(String root, List blackList) {
File dir = new File(root);
if (dir.isDirectory()) {
File[] files = dir.listFiles();
if (files != null && files.length > 0) {
for (File aFile : files) {
removeFilesInDirectory(aFile, blackList);
}
}
}
}

public void removeFilesInDirectory(File file, List blackList) {
if (file.isDirectory()) {
File[] files = file.listFiles();
if (files != null && files.length > 0) {
for (File aFile : files) {
removeFilesInDirectory(aFile, blackList);
}
}
} else {
for (String name : blackList) {
if (file.getName().contains(name)) {
file.delete();
}
}
}
}
Я могу использовать Java 8.

Вернуться в «JAVA»