相對路徑是相對指令碼檔案來的。
比如指令碼在C:/python目錄下,相同目錄下有一個檔案叫test.txt
那麼絕對路徑就是 C:/python/test.txt,相對路徑就是test.txt
使用指令碼 open("C:/python/test.txt","r") 和 open("test.txt","r")效果都是一樣的
我們可以多做幾次試驗,把”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.”
相對路徑是相對指令碼檔案來的。
比如指令碼在C:/python目錄下,相同目錄下有一個檔案叫test.txt
那麼絕對路徑就是 C:/python/test.txt,相對路徑就是test.txt
使用指令碼 open("C:/python/test.txt","r") 和 open("test.txt","r")效果都是一樣的
我們可以多做幾次試驗,把”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.”