2014-04-28 281 views
0

我無法在任何地方或任何其他地方找到Javadoc中的這一簡單信息。Java中的File.exists() - 相對路徑或絕對路徑?

比方說,我有路徑C文件:\用戶\ userOne \ myFile.exe

我創建一個文件實例與上述目錄

String myFile = "myFile.exe"; 
File file = new File("C:\users\userOne\" + myFile); 

下面做回真正的兩種功能?

file.exists("C:\" + myFile); 
file.exists("C:\users\userOne\" + myFile); 
+3

的['存在()'方法(http://docs.oracle.com /javase/8/docs/api/java/io/File.html#exists--)不帶任何參數 – rgettman

+0

第一個示例不是* relative *路徑,因爲您似乎認爲它是這樣的。 – usr2564301

+0

對不起 - 錯誤,並不意味着要添加參數。 – stark0788

回答

0

答案是兩者。如果它是絕對路徑,那麼它將使用絕對路徑。如果路徑是相對的,那麼它是相對的。我不確定還有什麼可以告訴你的?

順便說一句,你的第一個例子不會工作,因爲c:\ myFile.exe不存在。另外,正如指出的那樣,該方法不需要參數。

// current working directory 
System.getProperty("user.dir") 
0

我明白了答案,你正在尋找: 在Java中,我們必須逃跑重要,同時指向了一些路徑。

\\用於轉義反斜槓。

試試這個,你應該是好:

C:\用戶\ userOne \」 + MYFILE