user1688404
user1688404

Reputation: 739

Get the filePath from Filename using Java

Is there a easy way to get the filePath provided I know the Filename?

Upvotes: 16

Views: 182545

Answers (5)

N Djel Okoye
N Djel Okoye

Reputation: 1078

You may use:

FileSystems.getDefault().getPath(new String()).toAbsolutePath();

or

FileSystems.getDefault().getPath(new String("./")).toAbsolutePath().getParent()

This will give you the root folder path without using the name of the file. You can then drill down to where you want to go.

Example: /src/main/java...

Upvotes: 0

Markus
Markus

Reputation: 1450

Correct solution with "File" class to get the directory - the "path" of the file:

String path = new File("C:\\Temp\\your directory\\yourfile.txt").getParent();

which will return:

path = "C:\\Temp\\your directory"

Upvotes: 8

Miloš Ranđelović
Miloš Ranđelović

Reputation: 444

I'm not sure I understand you completely, but if you wish to get the absolute file path provided that you know the relative file name, you can always do this:

System.out.println("File path: " + new File("Your file name").getAbsolutePath());

The File class has several more methods you might find useful.

Upvotes: 8

jlordo
jlordo

Reputation: 37843

Look at the methods in the java.io.File class:

File file = new File("yourfileName");
String path = file.getAbsolutePath();

Upvotes: 18

assylias
assylias

Reputation: 328845

You can use the Path api:

Path p = Paths.get(yourFileNameUri);
Path folder = p.getParent();

Upvotes: 21

Related Questions