導航:首頁 > 編程語言 > javalinux相對路徑

javalinux相對路徑

發布時間:2023-07-09 05:53:58

linux的絕對路徑跟相對路徑怎麼解釋

絕對路徑:始終從根目錄(/)開始,比如:
/home/abhishek/scripts/my_scripts.sh
相對鉛返路徑:從當前目錄開始。比如,如果你在/home目錄中,希望訪問my_script.sh文件,那麼訪問的路徑應該是:
abhishek/scripts/my_scripts.sh
絕對路徑和相對路徑的差異
Linux中目錄結構其實槐謹飢是一個樹,從根(/)開始,然後產生分支,假設我們使用ls命令查看my_script.sh的文件信息,那麼使用絕對路徑:
ls -l /home/abhishek/scripts/my_script.sh
然後,相對路徑:
ls -l scripts/my_script.sh
那麼,以上兩種方式,除了文件路徑不一樣以外,其他的完全一樣。
需要注意的是,在Linux中,文件名區分大小寫。可以有大寫、小寫晌棗、數字、點、中劃線、下劃線以及除了斜杠(/)之外的大多數字元。斜杠(/)作為保留字元,用於根目錄和用於分割路徑中的目錄。
有兩種特殊的相對路徑:
.(一個點):表示路徑中的當前路徑;
..(兩個點):表示父目錄,即上一級目錄;

java 相對路徑問題。

在最前面加點的話就告訴file找的時候當前目錄找不到,就去相對的路徑去找,一般要相對路徑的話都是加點,兩個點點尋找的返回可能大些,但也值在項目目錄里找,直接/的話,這個貌似要在web項目里使用,直接在普通的項目里可能不行,你可以試試不每個file的absolutepath輸出一下看看都是什麼結果
幫你找了下別人寫的:
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的.

⑶ linux中如何得到java項目的相對路徑

相對路徑是相對某個位置來說的 看你當前在哪個位置 然後才能按這個位置寫相對路徑

⑷ linux什麼是絕對路徑與相對路徑,要由/usr/share/doc進入到/usr/share/man寫出相對路徑與絕對路徑。

你可以這樣理解,絕對路徑是從根目錄開始的路徑,而相對路徑是相當於當前路徑的一種形式,比如你的提問,從/usr/share/doc進入到/usr/share/man的絕對路徑是(用cd命令可以從一個目錄進入另一個目錄):
cd /usr/share/man
因為絕對路徑是從根目錄/開始的,所以絕對路徑直接寫就可以了,不需要考慮上一個路徑是什麼;而相對路徑是相當於另一個路徑的一種形式,需要考慮上一個路徑,比如你的提問,相對路徑形式是這樣的:
cd ../man
../表示當前目錄的上一級目錄,/usr/share/doc的上一級目錄是/usr/share這個路徑,因為/usr/share/man的上一級目錄也是/usr/share,所以../man就代表/usr/share/man的相對路徑了。

⑸ Linux相對路徑與絕對路徑區別

相對路徑就是相對當前你所在路徑開始算。
絕對路徑是從linux最底層的根(/)開始算。
其中:在Linux中,絕對路徑是從/(根目錄)開始的,路徑最前面是/的話就是絕對路徑。
相對路徑是直接輸入當前路徑下的文件夾或者以 . 或 .. 開始算的,.表示用戶當前操作所處的位置,.. 表示上一級目錄。
舉個例子:
/home/oracle 這個路徑就是絕對路徑
./home/oracle 這個就是相對路徑,例如現在在/test路徑下,此條路徑換算成絕對路徑為/test/home/oracle
../home/oracel 這個也是相對路徑,例如現在在/test路徑下,此條路徑換算成絕對路徑為:/home/oracel
注意後面兩個的對比,..是回到上一級然後在往後算。
使用pwd命令可以查看當前所在的絕對路徑。『

如題中提出的問題,答案如下:
由於不清楚相對路徑是相對於哪個路徑,這里默認在/目錄下。
用相對路徑名從usr/bin跳到/home/staff/john/project
答:cd ../../home/staff/john/project 或者 cd /home/staff/john/project
用絕對路徑名從usr/bin跳到/temp
答:cd ../../temp 或者 cd /temp
用相對路徑名從usr/bin跳到/etc/rc.d
答:cd ../../etc/rc.d 或者 cd /etc/rc.d
跳轉路徑可以直接輸入絕對路徑

閱讀全文

與javalinux相對路徑相關的資料

熱點內容
源碼微信小程序搭建 瀏覽:278
linux遠程桌面連接命令 瀏覽:859
adams教程pdf 瀏覽:264
Arm和單片機區別 瀏覽:559
阿里雲伺服器綁定主機頭 瀏覽:949
游戲手機什麼最好用安卓 瀏覽:11
江蘇程序員怎麼樣 瀏覽:510
捉妖股選股公式源碼 瀏覽:541
勝利油田的社保用什麼app 瀏覽:460
lru演算法java 瀏覽:129
數據分析系統源碼 瀏覽:539
論語繁體pdf 瀏覽:517
直上指標源碼 瀏覽:193
pythongeohash使用 瀏覽:348
二維熱力圖python 瀏覽:553
如何度過程序員菜鳥階段 瀏覽:505
python子圖標題顯示不出來 瀏覽:538
linux怎麼看連接伺服器的ip 瀏覽:709
windows命令行copy 瀏覽:65
都勻工會卡綁定什麼購物App 瀏覽:274