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

熱點內容
全國計算機等級考試3級教程 瀏覽:374
sqr開平方之後是什麼數據類型 瀏覽:726
圖片做word的背景 瀏覽:842
html文件怎麼轉換 瀏覽:563
怎麼把刪掉的app的圖標找回來 瀏覽:526
網路盜竊罪有哪些特徵 瀏覽:530
共享修復工具 瀏覽:588
移動花卡app免流怎麼用不了 瀏覽:942
excel保存時自動生成備份文件 瀏覽:438
區域網訪問文件 瀏覽:666
怎麼刪除遷移備份數據 瀏覽:144
office2016最新版本下載 瀏覽:148
蘋果uc下載在哪個文件夾里 瀏覽:265
網站底部信息 瀏覽:756
微軟win10工具下載 瀏覽:806
win10文件夾滑鼠右鍵一直轉圈圈 瀏覽:244
蘋果手機怎麼邊看邊聊 瀏覽:919
把vpk文件變成steam文件格式 瀏覽:89
m13數控編程代表什麼指令 瀏覽:595
招商銀行怎麼在app上請假 瀏覽:71

友情鏈接