Система не может сказать вам, Stringпредставляет ли a fileили directory, если он не существует в файловой системе. Например:
Path path = Paths.get("/some/path/to/dir");
System.out.println(Files.isDirectory(path));
System.out.println(Files.isRegularFile(path));
И для следующего примера:
Path path = Paths.get("/some/path/to/dir/file.txt");
System.out.println(Files.isDirectory(path));
System.out.println(Files.isRegularFile(path));
Итак, мы видим, что в обоих случаях система возвращает false. Это верно как для, так java.io.Fileи дляjava.nio.file.Path