原網址:http://blog.csdn.net/shendl/article/details/1427475
(注意:利用下面方式得到路徑,如果路徑中有空格字符, 那么會有"%20"進行替換, 所以得到之后再將"%20"替換成空格)
下面是一些得到classpath和當前類的絕對路徑的一些方法。你可能需要使用其中的一些方法來得到你需要的資源的絕對路徑。
1,FileTest.class.getResource("");
? ? ?FileTest.class.getResource("../");//得到上一級
得到的是當前類FileTest.class文件的URI目錄。不包括自己!
如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/com/test/
2,FileTest.class.getResource("/")
得到的是當前的classpath的絕對URI路徑。
如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/
3,Thread.currentThread().getContextClassLoader().getResource("")
得到的也是當前ClassPath的絕對URI路徑。
如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/
4,FileTest.class.getClassLoader().getResource("")
得到的也是當前ClassPath的絕對URI路徑。
如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/
5,ClassLoader.getSystemResource("")
得到的也是當前ClassPath的絕對URI路徑。
如:file:/D:/java/eclipse32/workspace/jbpmtest3/bin/
???
我推薦使用Thread.currentThread().getContextClassLoader().getResource("")來得到當前的classpath的絕對路徑的URI表示法。