У меня есть структура вложенных папокудалить все файлы во вложенных папках с именем, которое содержит «_bla»
Я хочу, чтобы удалить все файлы (не папки) в этой структуре, которая содержит название «_bla»
вот мой код, но это довольно громоздко
Знаете ли вы, как это сделать?
cleanDirectoryAccordingToBlackList(Constants.RESOURCES_PATH, ImmutableList.of("_bla"));
и
public void cleanDirectoryAccordingToBlackList(String root, List<String> 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<String> 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? – Dici
да. Я могу. thanks –