在程中我们常取一些资源的绝对径,下面给出一个简单方便的工具类来帮助我们轻松的找到我想的资源。(适用于CS/BS应用)

import java.io.File;

import java.io.IOException;

import java.net.URI;

import java.net.URISyntaxException;

/** *//**

* @author Maryang

* @version $Revision: 1.0 $

* 这个类提供了一些根据类的class文件位置来定位的方法。

*/

public class PathUtil {

/** *//**

* 获取一个Class的绝对路径

* @param clazz Class对象

* @return Class的绝对路径

*/

public static String getPathByClass(Class clazz){

String path = null;

try {

URI uri = clazz.getResource("").toURI();

File file = new File(uri);

path = file.getCanonicalPath();

} catch (URISyntaxException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

return path;

}

/** *//**

* 获取一个文件相对于一个Class相对的绝对路径

* @param clazz Class对象

* @param relativePath Class对象的相对路径

* @return 文件绝对路径

*/

public static String getFilePathByClass(Class clazz,String relativePath){

String filePath = null;

String clazzPath = getPathByClass(clazz);

StringBuffer sbPath = new StringBuffer(clazzPath);

sbPath.append(File.separator);

sbPath.append(relativePath);

File file = new File(sbPath.toString());

try {

filePath = file.getCanonicalPath();

} catch (IOException e) {

e.printStackTrace();

}

return filePath;

}

public static void main(String[] args) {

try {

System.out.println(getPathByClass(PathUtil.class));

System.out.println(getFilePathByClass(PathUtil.class,"../../images/logo.gif"));

} catch (Exception

java 路径 工具类,java 绝对路径工具类相关推荐

  1. Java常用工具类---IP工具类、File文件工具类

    package com.jarvis.base.util; import java.io.IOException; import java.io.InputStreamReader; import j ...

  2. java 获取service_Java service层获取HttpServletRequest工具类的方法

    Java service层获取HttpServletRequest工具类的方法 大家都知道 能在Controller/action层获取HttpServletRequest,但是这里给大家备份的是从代 ...

  3. java properties文件 安全_java 数据库读取工具类(读取config.properties配置文件)[包含线程安全] | 学步园...

    java 数据库读取工具类(读取config.properties配置文件)[包含线程安全] 数据库读取工具类 package com.db; import java.sql.Connection; ...

  4. java filehelper_Java常用工具类---IP工具类、File文件工具类

    package com.jarvis.base.util; import java.io.IOException; import java.io.InputStreamReader; import j ...

  5. java常用类解析五:IO系统File类及文件搜索工具类

    1.先看一个File类的简单的例子 [java] view plaincopy <span style="font-size:16px;">package test; ...

  6. java.util.zip 用法,Java压缩文件工具类ZipUtil使用方法代码示例

    本文实例通过Java的Zip输入输出流实现压缩和解压文件,前一部分代码实现获取文件路径,压缩文件名的更改等,具体如下: package com.utility.zip; import java.io. ...

  7. java当前类路径_java获取当前类的绝对路径

    另,Class类还有一个getResourceAsStream方法,记得以前有个项目要读取在同一个包内的一个xml,就用的这个. 1.如何获得当前文件路径 常用: (1).Test.class.get ...

  8. 【开发随机】JAVA+POI+自定义注解+反射构建自定义工具类实现快捷简便的Excel模板化导出(附demo代码)

    220907更新 项目UAT期间,用户反映了一个问题,数据量稍大的情况下,会出现"从某一行开始,往下所有行设置的字体和字体大小不生效"的BUG. 经过排查,发现原因是:POI的XS ...

  9. java解析shp文件以及坐标转换(工具类)

    百度找了很多大部分都是pom的,maven项目中的,但是用maven下载不了,只能一个jar一个jar下载了,中间也遇到了很多坑,都是pom中没有提到的架包 直接上代码,最后我会解析shp文件所用到的 ...

最新文章

  1. C语言 cgi(2)
  2. 判断一个整数是否是水仙花数 || 编写程序,根据输入的月份和年份,求出该月的天数(1-12)|| 运算符的优先级问题 ||输出小写的a-z以及大写的Z—A||求出1-1/2+1/3-1/4…..1/
  3. accessors 作用_lombok @Accessors用法详解(一看就能就懂)
  4. Selection change event Issue is fixed handleListItemPress,SingleSelectMaster
  5. mac利用vscode运行c语言程序,Mac下使用VScode编译配置C/C++程序详细图文教程
  6. git-分支的冲突与冲突的解决
  7. 如何成为一名好的研究生
  8. 使用Postfix与Dovecot部署邮件系统
  9. 掌握中台系统,需要了解哪些技术?
  10. 人工智能发展简史, 没想到17世纪AI就出现了!
  11. 一分钟电脑自动关机的代码
  12. 分享!微信群二维码突破100人限制和7天不过期的方法
  13. w7计算机开机密码怎么设置,如何设置电脑开机密码,图文教你怎么设置开机密码(winxp/win7)...
  14. uniapp 开发小程序对象传递数据结构封装一层$orig,使组件中v-model绑定value失效
  15. 异形与铁血战士关系 时间线
  16. arcgis根据7参转坐标_ArcGIS和COORD进行坐标七参数转换国家2000的方法
  17. java+vue实现词云生成+展示(kumo+echarts-wordcloud )
  18. 4星|《维米尔的帽子》:17世纪荷兰画中的全球化踪迹,鸦片与烟草被当时中国主流文化接纳的故事...
  19. Ubuntu 20.04 安装deepin-wine
  20. 西安IT男的前景: 我是IT程序员,没有成堆的快递箱, 却有你们看不到的追逐自我

热门文章

  1. 自然语言处理(NLP)之英文单词词性还原
  2. GNN|如何做的比卷积神经网络更好?
  3. 梯度下降到底是什么?
  4. 卧槽!阿里《算法进阶指南》火了,完整版 开放下载!
  5. ∇SLAM:自动可微分SLAM
  6. Eclipse Jetty 9.4.15 发布,建议使用 JDK 12
  7. 智能手机收邮件之NOKIA
  8. Zabbix安装配置(CentOS7.3)
  9. Android项目Tab类型主界面大总结 Fragment+TabPageIndicator+ViewPager
  10. 优化:梯度下降法、牛顿法、共轭梯度法