获取路径:获取的是项目目录, System.getProperty("user.dir")
, file.getCanonicalFile()
获取资源:获取的是resources目录下的资源, class.getResourceAsStream("/xcrj-resources.txt")
, class.getClassLoader().getResourceAsStream("xcrj-resources.txt")
package com.xcrj.path;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.Charset;
public class PathMain {
public static void main(String[] args) throws IOException {
// G:\micro-service\springbootbasic
System.out.println(System.getProperty("user.dir"));
// 设置为当前文件夹
File file = new File("");
// 标准路径,G:\micro-service\springbootbasic
System.out.println(file.getCanonicalFile());
// 绝对路径,G:\micro-service\springbootbasic
System.out.println(file.getAbsolutePath());
// 类的绝对路径,/G:/micro-service/springbootbasic/target/classes/
System.out.println(PathMain.class.getResource("/").getPath());
// resources/xcrj-resources.txt
InputStream is = PathMain.class.getResourceAsStream("/xcrj-resources.txt");
byte[] buf = new byte[is.available()];
is.read(buf);
System.out.println(new String(buf, Charset.forName("UTF-8")));
// resources/xcrj-resources.txt
InputStream is1 = PathMain.class.getClassLoader().getResourceAsStream("xcrj-resources.txt");
byte[] buf2 = new byte[is1.available()];
is1.read(buf2);
System.out.println(new String(buf2, Charset.forName("UTF-8")));
}
}