Ankur Ankur - 3 months ago 9
Java Question

Get file name from a file location in Java

I have a

String
that provides an absolute path to a file (including the file name). I want to get just the file's name. What is the easiest way to do this?

It needs to be as general as possible as I cannot know in advance what the URL will be. I can't simply create a URL object and use
getFile()
- all though that would have been ideal if it was possible - as it's not necessarily an
http://
prefix it could be c:/ or something similar.

Answer
new File(fileName).getName();

or

int idx = fileName.replaceAll("\\", "/").lastIndexOf("/");
return idx >= 0 ? fileName.substring(idx + 1) : fileName;