導航:首頁 > 編程語言 > java相對路徑轉絕對路徑

java相對路徑轉絕對路徑

發布時間:2023-06-27 20:21:57

java 怎麼把文件的絕對路徑轉換成相對路徑

把文件的絕對路徑轉換成相對路徑
java.io.File提供了兩個方法:
File
getAbsoluteFile()返回一個File對象專實例
Returns the absolute form of this abstract pathname.

String
getAbsolutePath() 返回一個字元串

Returns the absolute pathname string of this abstract pathname.

java.nio.file.Path提供的屬
Path
toAbsolutePath()
Returns a Path object representing the absolute path of this
path.

Ⅱ java中怎樣獲取當前路徑的絕對路徑

//如果是Web項目的抄襲話String path = this.getServletContext().getRealPath("/");//如果是普通的Java project的話,返回類的所在路徑,然後自己截取SuccessServlet.class.getResource("/");

Ⅲ java獲取指定資源文件路徑的幾種方法

你好,提問者:

指定資源路徑的方法有兩種:

一種是絕對路徑專,一種是相對路徑。

獲取當前類的所屬在工程路徑;
Filef=newFile(this.getClass().getResource("/").getPath());
System.out.println(f);
獲取當前類的絕對路徑;
Filef=newFile(this.getClass().getResource("").getPath());
System.out.println(f);
獲取當前類的所在工程路徑;
Filedirectory=newFile("");//參數為空
StringcourseFile=directory.getCanonicalPath();
System.out.println(courseFile);
獲取當前工程src目錄下selected.txt文件的路徑:
URLxmlpath=this.getClass().getClassLoader().getResource("selected.txt");
System.out.println(xmlpath);

Ⅳ io流中的相對路徑和絕對路徑是怎麼理解

File類是用來構造文件或文件夾的類,在其構造函數中要求傳入一個String類型的參數,用於指示文件所在的路徑.以前一直使用絕對路徑作為參數,其實這里也可以使用相對路徑.使用絕對路徑不用說,很容易就能定位到文件,那麼使用了相對路徑jvm如何定位文件的呢?
按照jdk Doc上的說法」絕對路徑名是完整的路徑名,不需要任何其他信息就可以定位自身表示的文件。相反,相對路徑名必須使用來自其他路徑名的信息進行解釋。默認情況下,java.io 包中的類總是根據當前用戶目錄來分析相對路徑名。此目錄由系統屬性 user.dir 指定,通常是 Java 虛擬機的調用目錄.」
相對路徑顧名思義,相對於某個路徑,那麼究竟相對於什麼路徑我們必須弄明白.按照上面jdk文檔上講的這個路徑是」當前用戶目錄」也就是」java虛擬機的調用目錄」.更明白的說這個路徑其實是我們在哪裡調用jvm的路徑.舉個例子:
假設有一java源文件Example.java在d盤根目錄下,該文件不含package信息.我們進入命令行窗口,然後使用」d:」命令切換到d盤根目錄下,然後用」javac Example.java」來編譯此文件,編譯無錯後,會在d盤根目錄下自動生成」Example.class」文件.我們在調用」java Example」來運行該程序.此時我們已經啟動了一個jvm,這個jvm是在d盤根目錄下被啟動的,所以此jvm所載入的程序中File類的相對路徑也就是相對這個路徑的,即d盤根目錄:D:\.同時」 當前用戶目錄」也是D:\.在System.getProperty(「user.dir」);系統變數」user.dir」存放的也是這個值.
我們可以多做幾次試驗,把」Example.class」移動到不同路徑下,同時在那些路徑下,執行」java Example」命令啟動jvm,我們會發現這個」當前用戶目錄」是不斷變化的,它的路徑始終和我們在哪啟動jvm的路徑是一致的.
搞清了這些,我們可以使用相對路徑來創建文件,例如:
File file = new File(「a.txt」);
File.createNewFile();
假設jvm是在」D:\」下啟動的,那麼a.txt就會生成在D:\a.txt;
此外,這個參數還可以使用一些常用的路徑表示方法,例如」.」或」.\」代表當前目錄,這個目錄也就是jvm啟動路徑.所以如下代碼能得到當前目錄完整路徑:
File f = new File(「.」);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);//D:\
最後要說說在eclipse中的情況:
Eclipse中啟動jvm都是在項目根路徑上啟動的.比如有個項目名為blog,其完整路徑為:D:\work\IDE\workspace\blog.那麼這個路徑就是jvm的啟動路徑了.所以以上代碼如果在eclipse里運行,則輸出結果為」 D:\work\IDE\workspace\blog.」
Tomcat中的情況.
如果在tomcat中運行web應用,此時,如果我們在某個類中使用如下代碼:
File f = new File(「.」);
String absolutePath = f.getAbsolutePath();
System.out.println(absolutePath);
那麼輸出的將是tomcat下的bin目錄.我的機器就是」 D:\work\server\jakarta-tomcat-5.0.28\bin\.」,由此可以看出tomcat伺服器是在bin目錄下啟動jvm的.其實是在bin目錄下的」 catalina.bat」文件中啟動jvm的.

Ⅳ 請問在java代碼中怎樣獲取某個磁碟上的某個文件的絕對路徑和相對路徑有知道的麻煩告訴我!謝謝!

啥子意來思》
String getAbsolutePath()
返回抽象路徑名自的絕對路徑名字元串。

這個相對路徑不好說:因為:
假設:
D盤 a\ b\ c\這里有個1.txt
相對於c\來說是:1.txt
相對於a\來說是:b\c\1.txt
呵呵,你自己看

------------------------
那就全盤搜索吧(樓上的方法)
Linux系統只用搜索一次

Ⅵ 關於java代碼中文件路徑的問題

這就是相對路徑

指的是相對於工程文件的位置而言


在eclipse的結構圖中的位置

當前目錄的路徑 D:spaceworkspaceDemo
Buffered.txt的絕對路徑 D:spaceworkspaceDemoBuffered.txt
Buffered.txt的相對路徑 Buffered.txt

閱讀全文

與java相對路徑轉絕對路徑相關的資料

熱點內容
岳陽微信公司 瀏覽:96
win10如何從備份中恢復出廠設置密碼 瀏覽:659
什麼軟體修改wifi密碼錯誤 瀏覽:582
遇見不安全網站怎麼辦 瀏覽:251
哪個app有慶余年電視劇 瀏覽:420
iphone5s視頻時很黑 瀏覽:601
js獲取埠號 瀏覽:347
手機短息發的鏈接病毒蘋果手機 瀏覽:724
win10專業忘記家庭組密碼 瀏覽:176
南寧applestore幾樓 瀏覽:296
java字元串怎麼初始化 瀏覽:349
醫美哪個app好 瀏覽:768
代碼編程和機器人編程哪個好 瀏覽:875
90版本男法 瀏覽:796
win10桌面字體難看 瀏覽:848
三菱fx5u支持哪些編程 瀏覽:7
優酷在文件夾在哪裡 瀏覽:91
趣列印的數據文件是什麼 瀏覽:871
linuxjava程序 瀏覽:483
蘋果6splus數據線圖片 瀏覽:98

友情鏈接