Java后端获取当前项目所在路径的方法(适用于Linux、Windows)

1、Windows环境下

(1) 获取和当前项目同级目录的路径

如果你希望获取到和当前项目同级目录下的某个文件的内容,可以搭配下面这个方法和读取文件内容的方法一起使用。

//获取到当前项目的上一级目录
public static String getProjParentPath(){
        String projPath = System.getProperties().getProperty("user.dir");
        return new File(projPath).getParent();
}

这个看个人需要,,一般采用第一个方法;如果我我希望获取到当前项目内的某个文件的内容,可以使用第二种方法,也可以采用其他获取绝对路径的方法。

(2) 获取到项目内某个文件的路径

方式一:获取当前项目所在路径

//获取到当前项目所在路径
public static String getProjPath(){
        return  System.getProperties().getProperty("user.dir");
}

上面这个方法获取到的仅仅只是当前项目所在路径,如果要继续访问项目里的文件,需要自己手动拼接路径。

方式二:获取static目录下的文件

ClassPathResource classPathResource = new ClassPathResource("static/"+文件名);
// 获取文件路径
String sourceFile = classPathResource.getFile().getPath();

这个的话,可以获取到 springboot项目中 static 目录下的某个文件的完整路径。

2、Linux环境下

这个函数不光是Windows环境下可以使用,Linux环境下也适用。如果你需要拼接的话,要注意,Linux环境下无法识别 '//' ,虽然Windows环境下没问题,但是Linux环境下就不行。

//获取到当前项目所在路径
public static String getProjPath(){
        return  System.getProperties().getProperty("user.dir");
}

你可能感兴趣的:(Java,java,开发语言)