Java获取相对路径文件

1. 文件在src下

class.getResourceAsStream(“”)获得的是相对路径
class.getClassLoader().getResourceAsStream(“”)加载器获得是绝对路径

Class.getResourceAsStream(String path) :
(1)不以 “/” 开头时,默认是从此类所在的包下取资源。
(2)以**“/”**开头,则是从ClassPath(Src根目录)根下获取。

Class.getClassLoader.getResourceAsStream(String path) :
默认则是从ClassPath根下获取,path不能以’/'开头。

2. 文件在src同级目录下
在这里插入图片描述

InputStream in = new BufferedInputStream(new FileInputStream("./test/aaa.txt"));
1.FileTest.class.getResource("")

得到的是当前类FileTest.class文件的URI目录。不包括自己!

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/com/test/

2.FileTest.class.getResource("/")

得到的是当前的classpath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

3.Thread.currentThread().getContextClassLoader().getResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

4.FileTest.class.getClassLoader().getResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

5.ClassLoader.getSystemResource("")

得到的也是当前ClassPath的绝对URI路径。

如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/

我推荐使用Thread.currentThread().getContextClassLoader().getResource("")来得到当前的classpath的绝对路径的URI表示法。
  • 9
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值