File.getAbsolutePath()将为您提供文件的完整完整路径名(文件路径+文件名)。
例如,
File file = File("C:\\abcfolder\\textfile.txt");
System.out.println("Path : " + file.getAbsolutePath());
它将显示完整路径:“ 路径:C:\\ abcfolder \\ textfile.txt ”。
在大多数情况下,您可能只需要获取文件路径“ C:\\ abcfolder \\ ”。 借助substring()和lastIndexOf()方法,您可以轻松提取文件路径:
File file = File("C:\\abcfolder\\textfile.txt");
String absolutePath = file.getAbsolutePath();
String filePath = absolutePath.
substring(0,absolutePath.lastIndexOf(File.separator));
获取文件路径示例
在此示例中,它将创建一个临时文件,并打印出它的文件路径。
package com.mkyong.file;
import java.io.File;
import java.io.IOException;
public class AbsoluteFilePathExample
{
public static void main(String[] args)
{
try{
File temp = File.createTempFile("i-am-a-temp-file", ".tmp" );
String absolutePath = temp.getAbsolutePath();
System.out.println("File path : " + absolutePath);
String filePath = absolutePath.
substring(0,absolutePath.lastIndexOf(File.separator));
System.out.println("File path : " + filePath);
}catch(IOException e){
e.printStackTrace();
}
}
}
结果
File path : C:\Users\mkyong\AppData\Local\Temp\i-am-a-temp-file69424.tmp
File path : C:\Users\mkyong\AppData\Local\Temp
参考
翻译自: https://mkyong.com/java/how-to-get-the-filepath-of-a-file-in-java/