在应用程序中,经常有需求获取资源文件的路径,并加载之。

其中一个方法就是使用绝对路径,比如:

File file = new File("D://xxxx");

但是不支持跨系统,linux上是不用C盘D盘的。

要做到像JVM一样牛逼,跨系统实现,需要使用绝对路径。

Class类提供的getResource方法就可以实现此功能。下边梳理下getResource使用时的一些情况:

path不以’/'开头时,默认是从此类所在的包下取资源;

path 以’/'开头时,则是从ClassPath根下获取;

classPath是指编译后字节码所放的路径,比如web项目,src不是classpath, WEB-INF/classes,lib才是classpath

image.png

如截图中的例子,一个打印了当前类文件的包路径。一个打印了classPath所在的包路径。

例子中举例资源文件A,B,C查找的方法。

TestSource.class.getResource("A.conf");

TestSource.class.getResource("/B.conf");

TestSource.class.getResource("/com/lxqn/jiapeng/threadPool/C.conf");

Class.getResource和Class.getResourceAsStream在使用时,路径选择上是一样的。后者返回的是流,方便封装工具类处理。

Class.getClassLoader().getResource使用

path不能以’/'开头时;

path是从ClassPath根下获取;

从结果上看TestSource.class.getResource("/") == TestSource.class.getClassLoader().getResource("") 等效的。

所以上述A,B,C的资源获取,可以写成如下:

TestSource.class.getClassLoader().getResource("com/lxqn/jiapeng/reflect/A.conf");

TestSource.class.getClassLoader().getResource("B.conf");

TestSource.class.getClassLoader().getResource("com/lxqn/jiapeng/threadPool/C.conf");

image.png

linux读取class下的文件路径,Class类getResource方法获取文件路径相关推荐

  1. linux系统vim下输入回车换行符号的解决方法

    linux系统vim下输入回车换行符号的解决方法 遇到问题 vim再linux 下回车后符号为'\r', 而不是我们想要的像windows下为'\r\n' 怎么解决呢?解决方法如下: 1. linux ...

  2. REST接口GET方法获取文件保存到本地(C#)

    REST接口GET方法获取文件保存到本地(C#) using System; using System.Collections.Generic; using System.Linq; using Sy ...

  3. java android 读取微信文件,Android 实现微信,QQ文件在其他应用打开并获取到路径

    例如: 1.想实现其他应用打开出现自己的应用,需要在清单文件中增加配置 注:自己需要什么样的文件格式自己可以配置,其中 minType 代表要打开的文件类型. 常用的类型: {".3gp&q ...

  4. javaIO流详解--读取,写入文件的所有类与方法

    目录 IO流简介: 1 :InputStream 2:OutputStream 3:FileInputStream 4:FileOutputStream 5:利用FileInputStream和Fil ...

  5. java 输出文件到mac路径_Java 中几种获取文件路径的方式

    原标题:Java 中几种获取文件路径的方式 1. 前言 Java开发中我们经常要获取文件的路径,比如读取配置文件等等.今天我们就关于文件的路径和如何读取文件简单地探讨一下. 2. 文件的路径 文件的路 ...

  6. java 读取流的字符编码格式_如何使用Java代码获取文件、文件流或字符串的编码方式...

    标签: 今天通过网络资源研究了一下如何使用Java代码获取文件.文件流或字符串的编码方式,现将代码与大家分享: package com.ghj.packageoftool; import info.m ...

  7. Python os.listdir方法(获取文件夹目录下的内容)

    一.os.listdir方法 os.listdir方法.参数为文件夹路径, 可以返回文件夹下的所有子文件.文件名称, 但不能返回子文件夹下的文件 import ospath = r"C:\U ...

  8. 获得虚拟服务器相对路径,在web应用中获取相对路径和绝对路径

    1.jsp中取得路径: 以工程名为TEST为例: (1)得到包含工程名的当前页面全路径:request.getRequestURI() 结果:/TEST/test.jsp (2)得到工程名:reque ...

  9. java获取项目中的路径_java中几种获取项目路径方式

    转自http://caodaoxi.iteye.com/blog/1234805 在jsp和class文件中调用的相对路径不同. 在jsp里,根目录是WebRoot 在class文件中,根目录是Web ...

最新文章

  1. 用eclipse生成可运行jar包、启动jar包及常见错误
  2. [蓝桥杯2016初赛]卡片换位-bfs
  3. 休眠日志:常见问题的提示和解决方案
  4. (转载)VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)...
  5. Linux 查找满足条件的文件并复制
  6. 状态空间离散化matlab,状态空间方程离散化的matlab处理
  7. 微众银行“梦见”区块链
  8. 球定位实景导航 iOS实用应用周排行
  9. jQuery教程(二)——jQuery选择器selector
  10. android p小米note3,小米note3|RROS-V7.0|安卓9.0|最强大的自定_最新最全的小米Note3ROM刷机包下载、刷机...
  11. java是c语言吗_java和c语言的区别是什么
  12. Matlab获取tif各格点经纬度
  13. p95、p99、p999 什么意思
  14. 别人从你身上偷不走的10件东西
  15. 浅析计算机主板故障,浅析计算机主板故障及维修
  16. 对于分布式集群,应该思考什么问题?
  17. 华为云水平到底怎么样?
  18. 初学:什么是pacman以及pacman的使用方法
  19. MATLAB中逻辑类型详解
  20. 43、Windows 7下安装Oracle 11g相关问题解决方法

热门文章

  1. bs客户端跨服务器管理文件,bs架构客户端和服务器
  2. 2021 年最佳 3D 渲染 GPU
  3. 【洛谷】P1359 租用游艇
  4. 为何能力越强越不被重用?不懂这3点,你到哪里都混不好,不服不行
  5. 哈工大计算机系统大作业:程序人生-Hello’s P2P
  6. PDA模拟中的问题1
  7. Python 爬虫心得
  8. python 估值模型_【中金固收·固收+】隐藏价值的角落:限售股AAP估值及Python实现方法(上)...
  9. 51单片机实战之电子时钟
  10. lol那个服务器有无限火力,全新游戏模式-无限火力上线