導航:首頁 > 編程語言 > 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相對路徑轉絕對路徑相關的資料

熱點內容
解壓代碼選擇 瀏覽:875
電腦開機後桌面文件全都沒有了 瀏覽:666
wap網站論壇 瀏覽:55
榮耀4版本信息顯示什麼字母 瀏覽:30
dnf蟲鏈怎麼升級 瀏覽:956
將16進制文件讀到數組中 瀏覽:899
caa中怎麼提取框選范圍數據 瀏覽:38
為什麼用數據登不上王者 瀏覽:92
yaffs2根文件系統 瀏覽:477
劍俠情緣微信活動禮包 瀏覽:985
ipad版本我的世界怎麼學賦魔 瀏覽:571
如何做好網站管理 瀏覽:280
湯姆貓是什麼網站 瀏覽:913
失易得數據恢復怎麼把照片 瀏覽:185
電腦只顯示1個網路 瀏覽:607
數控加工與編程專業怎麼樣 瀏覽:4
西安程序員工資 瀏覽:389
表格怎麼添加一行數據 瀏覽:35
旅遊網站開發怎麼選 瀏覽:669
properties文件位置 瀏覽:679

友情鏈接