读取文件放在同一个目录中的类?

时间:2012-04-13 11:58:37

标签: java file-io

reader = new CSVReader(new FileReader("file.txt"));

该文件与java类放在同一目录中。无论如何我得到FileNotFoundException。

有什么问题?

3 个答案:

答案 0 :(得分:0)

文件需要位于项目的根文件夹中。

答案 1 :(得分:0)

您的应用程序无法在该目录中运行。您可能必须使用绝对(或类路径相对)路径,或将文件移动到运行应用程序的目录。例如,在Eclipse中,这将是项目的根文件夹。

答案 2 :(得分:0)

相对路径相对于当前工作目录。在您的代码示例中,如果file.txt不在您当前的目录中,则无法找到它。

警惕在代码中使用相对路径。那是因为在编译时无法告诉代码运行时当前的工作目录是什么。

如果文件是部署的一部分,请将其存储在类路径中并通过ClassLoader.getResourceAsStream()访问它,如果它是用户可以更改的真正外部数据,则将文件名放在某种配置中。 / p>