在学习工作中遇到路径问题,就总结了一下,以供学习,若有什么问题还请各位多多指教。。。
得到类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/