Я использую класс FilenameFilter для перечисления всех файлов с определенным расширением в каталоге. Но я также хотел бы перечислить все каталоги в этом каталоге. Я искал в Интернете и узнал, как использовать FilenameFilter для нескольких расширений. Но как я могу это сделать и с каталогами?FilenameFilter для отображения файлов списка с определенными расширениями и каталогами
Вот код, который я использую, чтобы перечислить все файлы с расширением .txt:
File[] listOfFiles = folder.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".txt");
}
});
Есть даже способ сделать это с помощью фильтра или мне придется делать это в какой-то другой способ?
Это сломается, если у вас есть несколько точек в имени файла. Кроме того, вы не отвечаете на часть каталога вопроса. –
Я думаю, что это не сломает fileName.lastIndexOf (".") + 1, f.getName(). Length() –
Все должно быть хорошо. Вы можете даже опустить второй аргумент в 'substring', потому что подразумевается конец строки (https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#substring(int)) , –