如何仅使用文件名获取Java File AbsolutePath()?

时间:2018-06-27 09:15:22

标签: java

所以我正在测试java.io.File的getAbsolutePath(),当我向它提供像这样的完整路径时,它就可以正常工作

    File filePath = new File
    ("/home/ubuntu/Downloads/batman-face-funny-hd-background.jpg");
    System.out.println(filePath.getAbsolutePath());

打印出文件的正确路径

    /home/ubuntu/Downloads/batman-face-funny-hd-background.jpg

但是当我这样更改filePath

    File filePath = new File ("batman-face-funny-hd-background.jpg");

它打印出

    /home/ubuntu/workspace/testservlet/batman-face-funny-hd-background.jpg

所以我想知道的是,无论如何,我只能从文件名称(如“ batman-face-funny-hd-background.jpg”)中获取正确的文件路径,以及为什么当我提供时它会打印出该路径仅有文件名

    /home/ubuntu/workspace/testservlet/batman-face-funny-hd-background.jpg

1 个答案:

答案 0 :(得分:0)

我认为您需要

File filePath = new File("/home/ubuntu/Downloads/batman-face-funny-hd-background.jpg");  
System.out.println(filePath.getAbsolutePath().substring(filePath.getAbsolutePath().lastIndexOf("\\")+1));