获取路径getResourceAsStream使用

本文详细介绍了Java中如何正确地加载和解析配置文件,包括不同路径符号的意义、Class.getResource与ClassLoader.getResource的区别及其应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目遇到取不到配置文件的情况时用:InputStream is = TestFile.class.**getResourceAsStream**("config.properties");

这里说一下关于获取路径的问题:
1.(“”)和(“/”):(“”)表示在当前调用的文件,如com.x.y.a.txt,使用后获取com/x/y路径;(“/”)表示从根目录文件开始,如com.x.y.a.txt,使用后获取bin或src路径开始。
第一:前面有 “ / ”
“ / ”代表了工程的根目录,例如工程名叫做myproject,“ / ”代表了myproject
me.class.getResourceAsStream(“/com/x/file/myfile.xml”);

第二:前面没有 “ / ”
代表当前类的目录

public class Test
{
    public static void main(String[] args)
    {
        System.out.println(Test.class.getResource(""));
        System.out.println(Test.class.getResource("/"));
    }
}

运行结果为:
file:/D:/work_space/java/bin/net/swiftlet/
file:/D:/work_space/java/bin/

2.ClassLoader.getResource和Class.getResource
Class.getResource和ClassLoader.getResource本质上是一样的。ClassLoader.getResource(String path)中path不可以’/’开头。

3.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值