您好,登錄后才能下訂單哦!
今天小編給大家分享的是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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。