java中获取当前类所在的目录

在学习工作中遇到路径问题,就总结了一下,以供学习,若有什么问题还请各位多多指教。。。

得到类classes的目录:

String classDir = this.getClass().getResource(“/”).getPath()

如果要得到工程根目录:

String rootDir = this.getClass().getResource(“/”).getPath() +”../../”;

得到绝对路径:

request.getSession().getServletContext().getRealPath(“/”);

前提:

在java程序设计中有时候会要访问类所在 文件夹去取 些文件 比如要想改变窗口标题栏 左上角 图标图像 我们可以把1.gif 放在类所在文件夹 然后在程序中取这个gif 文件就可以了

2、实施:

如果对于类不在包内:利用 System.out.getProperty(“user.dir”)和this.getClass() .getResource(“”)获取 路径是 样 但是对于类在包内的情况就区别了: System.out.getProperty(“user.dir”)取得的是包所在 路径 而this.getClass().getResource(“”)才真正获得 是当前类所在 路径

3、代码实现:

我建立了 个包yyyb 其下有 个YyybDemo. 类

System.out.println(System.getProperty(“user.dir”));
System.out.println(this.getClass .getResource(“”).getPath());
this. IconImage(new ImageIcon(this.getClass().getResource(“1.gif”)).getImage());

4、例子结果:

上面 两个输出分别为:

D:\liyuanxun\java\develop\develop
/D:/liyuanxun/java/develop/develop/yyyb/

发布评论

您的电子邮箱不会被公开。 标记为 * 的区域必须填写

*

无觅相关文章插件,快速提升流量