获取工程或工程下的文件的路径

来源:互联网 发布:阿里云服务器重装系统 编辑:程序博客网 时间:2024/05/17 17:14
参考文档
在java application中获取当前工程/文件地址:http://blog.sina.com.cn/s/blog_7ba68f520100pov7.html
java获得项目中的文件:http://www.educity.cn/wenda/92643.html


常用的类和方法

对于 getCanonicalPath() 函数,“ ." 就表示当前的文件夹,而” .. “则表示当前文件夹的上一级文件夹 
对于 getAbsolutePath() 函数,则不管” . ”、“ .. ”,返回当前的路径加上你在 new File() 时设定的路径 
至于 getPath() 函数,得到的只是你在 new File() 时设定的路径 


第一种: getResource()

File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f); 
结果:C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin 
获取当前类的【所在工程路径】; 

如果不加“/” 
File f = new File(this.getClass().getResource("").getPath()); System.out.println(f); 
结果: C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin\com\test 
获取【当前类的绝对路径】; 


第二种:getCanoncalPath()

File directory = new File("");//参数为空 String courseFile = directory.getCanonicalPath() ; System.out.println(courseFile); 
结果: C:\Documents and Settings\Administrator\workspace\projectName 
获取【当前类的所在工程路径】; 

第三种: getClass().getClassLoader().getResource()

URL xmlpath = this.getClass().getClassLoader().getResource("selected.txt"); System.out.println(xmlpath); 
结果: file:/C:/Documents%20and%20Settings/Administrator/workspace/projectName/bin/selected.txt 
获取【当前工程src目录下selected.txt文件的路径 】

第四种: getProperty()

System.out.println(System.getProperty("user.dir")); 
结果: C:\Documents and Settings\Administrator\workspace\projectName 
获取【当前工程路径】 
System.out.println( System.getProperty("java.class.path")); 
结果: C:\Documents and Settings\Administrator\workspace\projectName\bin 
获取【当前工程路径】
0 0