今天小編給大家分享的是java獲取java文件路徑的四種方法,很多人都不太了解,今天小編為了讓大家更加了解獲取java文件路徑的方法,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、玉泉網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、玉泉網(wǎng)絡(luò)營銷、玉泉企業(yè)策劃、玉泉品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供玉泉建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.comjava獲取java文件的路徑怎么寫?
1、java代碼獲取文件當(dāng)前路徑
//利用System.getProperty()函數(shù)獲取當(dāng)前路徑 System.out.println(System.setProperty("user.dir", "c:users")); System.out.println(System.getProperty("user.dir"));//user.dir指定了當(dāng)前的路徑 //在類中取得類的絕對(duì)路徑 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的絕對(duì)URI路徑 System.out.println(Thread.currentThread().getContextClassLoader().getResource(".").getPath());//項(xiàng)目的絕對(duì)路徑
2、使用File提供的函數(shù)獲取當(dāng)前路徑
File directory = new File("");//設(shè)定為當(dāng)前文件夾 try{ System.out.println(directory.getCanonicalPath());//獲取標(biāo)準(zhǔn)的路徑 System.out.println(directory.getAbsolutePath());//獲取絕對(duì)路徑 }catch(Exceptin e){ }
(1)注意:
File.getCanonicalPath()和File.getAbsolutePath()大約只是對(duì)于new File(“.”)和new File(“..”)兩種路徑有所區(qū)別。
對(duì)于getCanonicalPath()函數(shù),“.”就表示當(dāng)前的文件夾,而”..“則表示當(dāng)前文件夾的上一級(jí)文件夾。
對(duì)于getAbsolutePath()函數(shù),則不管”.”、“..”,返回當(dāng)前的路徑加上你在new File()時(shí)設(shè)定的路徑
至于getPath()函數(shù),得到的只是你在new File()時(shí)設(shè)定的路徑。
(2)如當(dāng)前的路徑為 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()參數(shù)大全
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)以項(xiàng)目名TEST為例
//得到包含工程名(工程名為TEST)的當(dāng)前頁面全路徑:request.getRequestURI() 結(jié)果:/TEST/test.jsp //得到工程名:request.getContextPath() 結(jié)果:/TEST //得到當(dāng)前頁面所在目錄下全名稱:request.getServletPath() 結(jié)果:如果頁面在jsp目錄下 /TEST/jsp/test.jsp //得到頁面所在服務(wù)器的全路徑:application.getRealPath("頁面.jsp") 結(jié)果:D:/resin/webapps/TEST/test.jsp //得到頁面所在服務(wù)器的絕對(duì)路徑:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent(); 結(jié)果:D:/resin/webapps/TEST
4、在Servlet中獲取路徑
//得到工程目錄:request.getSession().getServletContext().getRealPath("") 參數(shù)可具體到包名。 結(jié)果:E:/Tomcat/webapps/TEST //得到url地址欄地址:request.getRequestURL() 結(jié)果:http://localhost:8080/TEST/test //得到相對(duì)地址:request.getRequestURI() 結(jié)果:/TEST/test
關(guān)于java獲取java文件路徑的四種方法就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過小編可以保證其準(zhǔn)確性是絕對(duì)沒問題的。希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。