Например, «M:\SOURCE\*.doc», а SOURCE может выглядеть так:
Код: Выделить всё
|-- SOURCE
| |-- Folder1
| | |-- File1.doc
| | |-- File1.txt
| |-- File2.doc
| |-- File3.xml
Изначально я использую DirectoryStream, потому что это уже делает некоторые проверки синтаксиса маски/глоба, а также возможность использовать его для фильтрации, поскольку это НЕ просто какое-то регулярное выражение, а настоящая маска файла, которую обычному пользователю легче понять
Код: Выделить всё
Files.newDirectoryStream(path, mask);
ЗАТЕМ появляется метод «сглаживания» с помощью Files.walk, который фактически может просматривать все подкаталоги, проблема в том, что он НЕ предоставляет возможности «фильтровать» по маску файла так же, как и DirectoryStream
Код: Выделить всё
Files.walk(path, Integer.MAX_VALUE);
Подробнее здесь: https://stackoverflow.com/questions/648 ... rn-or-glob
Мобильная версия