reader = new CSVReader(new FileReader("file.txt"));
的文件被放置在相同的目錄中的Java類。無論如何,我得到FileNotFoundException。讀取文件與類相同的目錄位置?
出了什麼問題?
reader = new CSVReader(new FileReader("file.txt"));
的文件被放置在相同的目錄中的Java類。無論如何,我得到FileNotFoundException。讀取文件與類相同的目錄位置?
出了什麼問題?
相對路徑是相對於當前的工作目錄。在您的代碼示例中,如果file.txt
不在您當前的目錄中,它將不會被找到。
警惕在代碼中使用相對路徑。這是因爲在編譯時不可能告訴你代碼運行時當前的工作目錄是什麼。
如果該文件是部署的一部分,請將其存儲在類路徑中,並通過ClassLoader.getResourceAsStream()
訪問它,如果它是用戶可以更改的真正的外部數據,請將該文件名置於某種配置中。
文件需要在項目的根文件夾。
您的應用程序不能在該目錄中運行。您必須使用絕對路徑(或類路徑相對)路徑,或將文件移動到應用程序運行的目錄。例如,在Eclipse中,這將是您項目的根文件夾。
你可以得到新的文件( 「 」)當前目錄。getAbsolutPath()用於調試目的... – wrm 2012-04-13 12:04:01
或者更簡單地說System.getProperty(「 user.dir來」) – 2012-04-13 12:05:38