获取包下资源

当需要获取包下的资源时就可以用这种方式

Url url = Class.getResource(String path)
//path  不以’/'开头时,默认是从此类所在的包下取资源;
//path  以’/'开头时,则是从ClassPath根下获取;
/*
 * 如果是文件的话
 * url.getPath() 就是这个文件或者文件夹的路径
 */
当然,考虑到编码的问题,
最好还是利用如下方法转化为utf-8的编码 让java能够绝对的识别正确
String path = URLDecoder.decode(url.getPath(), "UTF-8")
如果是文件或者文件夹的话,就可以生成File对象了
File file = new File(path);

直接获取输入流

this.getClass().getResourceAsStream("/db.properties");
//等同于下方的代码

ClassLoader classLoader = this.getClass().getClassLoader();
URL url = classLoader.getResource("/db.properties");
InputStream is= url.openConnection().getInputStream();

Properties读取文件

Properties p = new Properties();
p.load(getClass().getResourceAsStream("/db.properties"));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,067评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,977评论 6 342
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,821评论 25 709
  • 绪论 模型评估与选择 线性模型用一个线性数学公式表示输入和输出的关系 决策树if-else 神经网络当有大量的样本...
    共田君阅读 220评论 0 0
  • 其实很多时候,感觉自己想放弃,想去投靠亲人时,总是有点心伤。因为不见得自己过得不易 他人就比自己过得易,自己不去努...
    馥薰阅读 338评论 0 0