概述
在项目中有时候我们通常会需要操作resources目录下的文件,我们怎样去获取到文件并操作呐?
我们知道,resource下的文件,通过maven编译后,会被放到classes目录下,在java中我们可以通过类名.class.getResource("/")获取到classes目录的URI,再通过getPath获取目录路径,拼接文件路径和文件名,我们就可以获得完整的路径了,当我们有了完整的目录路径后就可以通过File等类对文件进行操作了
demo
String dirPathTest = TestFileUtil.class.getResource("/").getPath();
String filePathTest = dirPathTest+"demo"+File.separator+"demo.xlsx";
System.out.println(dirPathTest);
System.out.println(filePathTest);
我们可以看到获得了文件路径
其实如果经常需要获取resources目录路径的时候,可以通过,可以将
TestFileUtil.class.getResource("/").getPath();
写为一个通用方法,
在获取完整文件路径时,通过此方法+拼接文件路径,就可以获得完整文件路径了
如下
public String getResourcesPath(){
return TestFileUtil.class.getResource("/").getPath();
}
public static void main(String[] args) {
String filePath = getResourcesPath+File.separator+"demo"+File.separator+"demo.xlsx";
}
这样做可以重复调用,很舒服