В Java мы можем использовать Files.exists(путь)
чтобы проверить, существует ли файл. Путь
может быть файлом или каталогом. Лучше сочетать с !Каталог файлов.IS (путь)
чтобы убедиться, что существующий файл не является каталогом.
Path path = Paths.get("/home/mkyong/test/test.log"); // file exists and it is not a directory if(Files.exists(path) && !Files.isDirectory(path)) { System.out.println("File exists!"); }
1. Файлы.существует (путь) (НИО)
В этом примере используется Files.exists(путь)
для проверки наличия файла.
package com.mkyong.io.file; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class FileExist { public static void main(String[] args) { Path path = Paths.get("/home/mkyong/test/test.log"); // check exists for file and directory if (Files.exists(path)) { if (Files.isRegularFile(path)) { System.out.println("File exists!"); } if (Files.isDirectory(path)) { System.out.println("File exists, but it is a directory."); } } else { System.out.println("File doesn't exist"); } } }
1.2 Если файл является символической ссылкой или программной ссылкой, Files.exists
будет следовать по ссылке по умолчанию. Files.существует
принимает два аргумента, мы можем передать второй параметр Ссылка. NOFOLLOW_LINKS
аргумент, указывающий методу прекратить переход по символической ссылке.
import java.nio.file.Files; import java.nio.file.LinkOption; // do not follow symbolic link if(Files.exists(path, LinkOption.NOFOLLOW_LINKS)){ //... }
1.3 Существует Files.notexists()
для проверки несуществующего файла.
if(Files.notExists(path)){ System.out.println("File doesn't exist"); }
2. Файл.существует (устаревший ввод-вывод)
Унаследованный IO java.io . Файл
имеет аналогичный Файл.существует()
для проверки, существует ли файл или каталог, но он не поддерживает символические ссылки.
package com.mkyong.io.file; import java.io.File; public class FileExist2 { public static void main(String[] args) { File file = new File("/home/mkyong/test/"); if(file.exists() && !file.isDirectory()){ System.out.println("File exists!"); }else{ System.out.println("File doesn't exist"); } } }
Скачать Исходный Код
$клон git $клон git
$cd java-ввод-вывод
Рекомендации
Оригинал: “https://mkyong.com/java/how-to-check-if-a-file-exists-in-java/”