Java资源目录访问一目了然

假设你的资源目录如下:

+-----src
.      |     img0.png
.      \-----fichierPointJava
.             |      img1.png
.             |      <YourClass.java>

你可以通过以下方式来获取资源:

// 在非静态方法中使用ClassLoader的getResource()
getClass().getClassLoader().getResource("img0.png");
getClass().getClassLoader().getResource("fichierPointJava/img1.png");

// 在静态方法中使用ClassLoader的getResource
<YourClass>.class.getClassLoader().getResource("img0.png");
<YourClass>.class.getClassLoader().getResource("fichierPointJava/img1.png");

// 在非静态方法中使用Class的getResource()
getClass().getResource("../img0.png");
getClass().getResource("/img0.png");
getClass().getResource("img1.png");
getClass().getResource("/fichierPointJava/img1.png");

// 在静态方法中使用Class的getResource()
<YourClass>.class.getResource("../img0.png");
<YourClass>.class.getResource("/img0.png");
<YourClass>.class.getResource("img1.png");
<YourClass>.class.getResource("/fichierPointJava/img1.png");

总结

  • 当你使用ClassLoader的getResource()时,你需要传入完整的路径,包括包名。
  • 当使用Class的getResource()时,如果传入的路径不以/开头时,则只要传入资源与当前类所在包的相对路径即可 ,否则依然要传入完整的路径。
最后,请确认你构建的Jar中包含了你的资源信息,你可以使用Zip工具打开查看。你可以在API中 ClassLoader#getResourceClass#getResource查看更多的细节。

参考


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值