How to access a sub-file/folder in Java 7 java.nio.file.Path?

24,757

Use the resolve method on Path.

There are two methods with this name. One takes a relative Path and the other a String. It uses the Path on which it is called as a parent and appends the String or relative Path appropriately.

Path parent = Paths.get("c:\\tmp");
Path child = parent.resolve("child");
Share:
24,757
ripper234
Author by

ripper234

See blog or LinkedIn Profile

Updated on July 05, 2022

Comments

  • ripper234
    ripper234 almost 2 years

    Java 7 introduced java.nio.file.Path as a possible replacement for java.io.File.

    With File, when I access a file under a specific, I would do:

    File parent = new File("c:\\tmp");
    File child = new File(parent, "child"); // this accesses c:\tmp\child
    

    What's the way to do this with Path?

    I supposed this will work:

    Path parent = Paths.get("c:\\tmp");
    Path child = Paths.get(parent.toString(), "child");
    

    But calling parent.toString() seems ugly. Is there a better way?

  • Ryan Leach
    Ryan Leach over 2 years
    But this uses path resolution, which could potentially cause a security concern.