file.isDirectory()
сообщит вам, если объект File
представляет каталог.
В документации listFiles()
упоминается, что она вернет null
в случае, если File
не представляет каталог. Кроме того, вам нужно проверить с помощью file.canRead()
, может ли приложение читать каталог.
Но API File
здесь действительно плох, потому что он может вернуть null
, если возникнет проблема ввода-вывода. Так что, где вы обычно ловите IOException
, здесь вы должны проверить на null
. Например, Apache commons-io FileUtils
использует именно такой подход:
File[] found = directory.listFiles(filter);
if (found != null) {...}