文件未找到?

时间:2010-12-02 21:20:44

标签: java file-io

我有一个赋值,我们给了几个类,其中一个是文件读取器类,它有一个读取文件的方法,并使用包含文件路径的参数(String)调用,现在我有一个几个.txt文件,它们和.java文件在同一个文件夹中,所以我想我可以将file.txt作为文件路径传递(比如在php中,相对而言),但总是返回一个未找到文件的异常!

看到给定的类应该正常工作的事实,并且我确认这些类实际上与.java文件位于相同的文件夹workspace / src中我必须对文件路径字符串做错了什么,但是什么?< / p>

这是我的代码:

private static final String fileF = "File.txt";
private static final ArrayList<String[]> instructionsF =
CreatureReader.readInstructions(fileF);

3 个答案:

答案 0 :(得分:10)

把这个:

File here = new File(".");
System.out.println(here.getAbsolutePath());

代码中的某处。它将打印出程序的当前目录。

然后,只需将文件放在那里,或更改文件路径。

答案 1 :(得分:3)

要注意两件事:

  1. 检查“File.txt”是否真的这样命名,因为它找不到“file.txt” - &gt;区分大小写很重要!
  2. 如果您使用相对文件名(没有整个目录)并且它不在您的类路径上,则
  3. 将找不到您的文件 - &gt;尝试将其放在生成.class文件的位置
  4. 所以:如果你有一个名为/home/javatest/File.txt的文件,你的源代码在/home/javatest/,你的.class文件在同一个目录中,你的代码应该可以正常工作。 / p>

答案 2 :(得分:0)

如果您的类在包中并且您已将文件放置为兄弟,那么您的路径必须包含包路径。正如其他答案中所建议的那样,打印出工作目录的路径,以确定Java在哪里查找相对的文件。