Files.exists()
Проверяет, существует ли файл или папка. Рядом — isDirectory(), isRegularFile(), size().
Доступно с: Java 7
Синтаксис
static boolean exists(Path path, LinkOption... options)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| path | Path | Путь для проверки. |
| options | LinkOption... | NOFOLLOW_LINKS — не переходить по символическим ссылкам. Обычно не указывают. |
Возвращаемое значение
booleantrue, если файл или папка есть.
Примеры
Проверки до и после создания файла:
void main() throws IOException {
Path file = Path.of("config.txt");
IO.println(Files.exists(file));
Files.writeString(file, "debug=true");
IO.println(Files.exists(file));
IO.println(Files.isDirectory(file));
IO.println(Files.size(file));
Files.delete(file);
}Результат:
false
true
false
10Примечания
Между проверкой и действием файл может появиться или исчезнуть, поэтому проверка не заменяет обработку IOException. Часто проще сразу выполнить действие и поймать исключение или использовать Files.deleteIfExists().
См. также
- Files.delete() — Удаляет файл или пустую папку. Вариант deleteIfExists() не бросает исключение, если файла нет.
- Files.createDirectories() — Создаёт папку вместе со всеми недостающими родительскими папками.
- Path.of() — Создаёт объект Path — путь к файлу или папке.
Вопросы и ответы по теме
В учебнике
- Файлы и пути — Работа с файловой системой в Java — Path, Files.exists, создание папок и файлов, размер, копирование, перемещение, удаление и список файлов.