java-关于getResourceAsStream

 

 

 

1111class.getClassLoader().getResourceAsStream

InputStream ips = testResource.class.getClassLoader().getResourceAsStream("test/name.txt");

默认则是从ClassPath根下获取,path不能以’/'开头,

最终是由ClassLoader获取资源。

 

222class.getResourceAsStream

 InputStream ips  = testResource.class.getResourceAsStream("test/name.txt");
InputStream ips  = testResource.class.getResourceAsStream("/test/name.txt");

 

可以获取得到

 

 

 

InputStream ips  = testResource.class.getResourceAsStream("name.txt");

获取不到

 path 不以’/'开头时默认是从此类所在的包下取资源
以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,
最终还是由ClassLoader获取资源。

由上面的获取得到可以知道,类所在的包下(现在就是src下)对应resource下:

 

 

 

 以根路径

InputStream ips  = testR.class.getResourceAsStream("/test/name.txt");
可以得到

以当前类路径
InputStream ips  = testR.class.getResourceAsStream("../test/name.txt");

 

根路径是和resource相对应的

 

posted @ 2020-06-24 18:39  小丑quan  阅读(201)  评论(0)    收藏  举报