2013-06-28 31 views
0

這是我的代碼:檢查文件是否存在不工作

String path = "/src/cst/org/main/data/data.txt"; 
    File f = new File(path); 
    if(f.exists()) { 
     yesorno = true; 
     System.out.println("File exists: " + yesorno); 
    } else { 
     yesorno = false; 
     System.out.println("File does not exist: " + yesorno); 
    } 

當我運行此我總是得到「文件不存在......」即使該文件存在是肯定的。如果我輸入完整的路徑(C:/ User/...),它可以工作,但我想通過縮短代碼來讓它工作。

我知道這個路徑實際上起作用,因爲在另一個類中該方法找到了我的圖片(.png)。我是否需要添加一些內容,因爲它是一個.txt文件?

+4

如果你鍵入'/ src目錄/ ...'這是一個絕對路徑...在Windows機器上,它是保證_not_存在。 – fge

+0

但是當我刪除'/ src /'時,它仍然找不到我的文件D: – ColdStormy

+0

@fge:實際上,沒有。它將採用當前驅動器上的絕對路徑*。它可能存在 - 但它不會是「C:\ Users \ ...」,除非涉及到路口。 –

回答

1

是的,因爲你不是正確的,所以你想給出一個完整的文件路徑。
用途:

​​
+0

這將返回相對於所用類的路徑。這也可能不起作用。 ( –

+0

)不工作=( – ColdStormy

+1

這應該工作,因爲*文本*文件放在你的一個包中,我只是試圖這樣做,它的工作,也許你沒有這樣做正確 – Azad