从 Java 中的文件位置获取文件名
我有一个提供文件绝对路径(包括文件名)的。我只想获取文件的名称。最简单的方法是什么?String
它需要尽可能通用,因为我无法事先知道URL是什么。我不能简单地创建一个URL对象并使用 - 尽管如果可能的话,这将是理想的 - 因为它不一定是一个前缀,它可以是c:/或类似的东西。getFile()
http://
我有一个提供文件绝对路径(包括文件名)的。我只想获取文件的名称。最简单的方法是什么?String
它需要尽可能通用,因为我无法事先知道URL是什么。我不能简单地创建一个URL对象并使用 - 尽管如果可能的话,这将是理想的 - 因为它不一定是一个前缀,它可以是c:/或类似的东西。getFile()
http://
new File(fileName).getName();
或
int idx = fileName.replaceAll("\\\\", "/").lastIndexOf("/");
return idx >= 0 ? fileName.substring(idx + 1) : fileName;
请注意,第一个解决方案与系统相关。它只考虑系统的路径分隔符字符。因此,如果您的代码在Unix系统上运行并接收Windows路径,则它将不起作用。在处理 Internet Explorer 发送的文件上载时,就是这种情况。
new File(absolutePath).getName();