2012-04-13 25 views
0
reader = new CSVReader(new FileReader("file.txt")); 

的文件被放置在相同的目錄中的Java類。無論如何,我得到FileNotFoundException。讀取文件與類相同的目錄位置?

出了什麼問題?

+0

你可以得到新的文件( 「 」)當前目錄。getAbsolutPath()用於調試目的... – wrm 2012-04-13 12:04:01

+0

或者更簡單地說System.getProperty(「 user.dir來」) – 2012-04-13 12:05:38

回答

0

相對路徑是相對於當前的工作目錄。在您的代碼示例中,如果file.txt不在您當前的目錄中,它將不會被找到。

警惕在代碼中使用相對路徑。這是因爲在編譯時不可能告訴你代碼運行時當前的工作目錄是什麼。

如果該文件是部署的一部分,請將其存儲在類路徑中,並通過ClassLoader.getResourceAsStream()訪問它,如果它是用戶可以更改的真正的外部數據,請將該文件名置於某種配置中。

0

文件需要在項目的根文件夾。

0

您的應用程序不能在該目錄中運行。您必須使用絕對路徑(或類路徑相對)路徑,或將文件移動到應用程序運行的目錄。例如,在Eclipse中,這將是您項目的根文件夾。

相關問題