Search code examples
javapathnio

Is there a reason to get the file name of a path before converting it to a file?


Someone answered one of my questions using path.getFileName().toFile() instead of just path.toFile(). Is there a reason for that or should I use just path.toFile()?


Solution

  • In your specific situation it was path.getFileName().toFile().getName() in this case path.toFile().getName() will give you same result.

    But generally speaking path.getFileName().toFile() and path.toFile() will return different files.

    Here small example.

        Path path =  FileSystems.getDefault().getPath("foo", "bar", "buzz");
        System.out.println(path.getFileName().toFile());
        System.out.println(path.toFile());
    

    Which give us

    buzz
    foo\bar\buzz