今天小编给大家分享的是java获取java文件路径的四种方法,很多人都不太了解,今天小编为了让大家更加了解获取java文件路径的方法,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。
java获取java文件的路径怎么写?
1、java代码获取文件当前路径
//利用System.getProperty()函数获取当前路径 System.out.println(System.setProperty("user.dir", "c:users")); System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 //在类中取得类的绝对路径 System.out.println(Class.class.getClass().getResource("/").getPath()); System.out.println(Thread.currentThread().getContextClassLoader().getResource("./").getPath()); System.out.println(Thread.currentThread().getContextClassLoader().getResource("").getPath());//ClassPath的绝对URI路径 System.out.println(Thread.currentThread().getContextClassLoader().getResource(".").getPath());//项目的绝对路径
2、使用File提供的函数获取当前路径
File directory = new File("");//设定为当前文件夹 try{ System.out.println(directory.getCanonicalPath());//获取标准的路径 System.out.println(directory.getAbsolutePath());//获取绝对路径 }catch(Exceptin e){ }
(1)注意:
File.getCanonicalPath()和File.getAbsolutePath()大约只是对于new File(“.”)和new File(“..”)两种路径有所区别。
对于getCanonicalPath()函数,“.”就表示当前的文件夹,而”..“则表示当前文件夹的上一级文件夹。
对于getAbsolutePath()函数,则不管”.”、“..”,返回当前的路径加上你在new File()时设定的路径
至于getPath()函数,得到的只是你在new File()时设定的路径。
(2)如当前的路径为 C:/test :
File directory = new File("abc"); directory.getCanonicalPath();//得到的是C:/test/abc directory.getAbsolutePath();//得到的是C:/test/abc direcotry.getPath();//得到的是abc File directory = new File("."); directory.getCanonicalPath();//得到的是C:/test directory.getAbsolutePath();//得到的是C:/test/. direcotry.getPath(); //得到的是. File directory = new File(".."); directory.getCanonicalPath(); //得到的是C:/ directory.getAbsolutePath(); //得到的是C:/test/.. direcotry.getPath(); //得到的是..
(3) System.getProperty()参数大全
java.version Java Runtime Environment version java.vendor Java Runtime Environment vendor java.vendor.url Java vendor URL java.home Java installation directory java.vm.specification.version Java Virtual Machine specification version java.vm.specification.vendor Java Virtual Machine specification vendor java.vm.specification.name Java Virtual Machine specification name java.vm.version Java Virtual Machine implementation version java.vm.vendor Java Virtual Machine implementation vendor java.vm.name Java Virtual Machine implementation name java.specification.version Java Runtime Environment specification version java.specification.vendor Java Runtime Environment specification vendor java.specification.name Java Runtime Environment specification name java.class.version Java class format version number java.class.path Java class path java.library.path List of paths to search when loading libraries java.io.tmpdir Default temp file path java.compiler Name of JIT compiler to use java.ext.dirs Path of extension directory or directories os.name Operating system name os.arch Operating system architecture os.version Operating system version file.separator File separator ("/" on UNIX) path.separator Path separator (":" on UNIX) line.separator Line separator ("/n" on UNIX) user.name User’s account name user.home User’s home directory user.dir User’s current working directory
3、在jsp中取得路径
(1)以项目名TEST为例
//得到包含工程名(工程名为TEST)的当前页面全路径:request.getRequestURI() 结果:/TEST/test.jsp //得到工程名:request.getContextPath() 结果:/TEST //得到当前页面所在目录下全名称:request.getServletPath() 结果:如果页面在jsp目录下 /TEST/jsp/test.jsp //得到页面所在服务器的全路径:application.getRealPath("页面.jsp") 结果:D:/resin/webapps/TEST/test.jsp //得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent(); 结果:D:/resin/webapps/TEST
4、在Servlet中获取路径
//得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。 结果:E:/Tomcat/webapps/TEST //得到url地址栏地址:request.getRequestURL() 结果:http://localhost:8080/TEST/test //得到相对地址:request.getRequestURI() 结果:/TEST/test
关于java获取java文件路径的四种方法就分享到这里了,当然并不止以上和大家分析的办法,不过小编可以保证其准确性是绝对没问题的。希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。