我有一个赋值,我们给了几个类,其中一个是文件读取器类,它有一个读取文件的方法,并使用包含文件路径的参数(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);
答案 0 :(得分:10)
把这个:
File here = new File(".");
System.out.println(here.getAbsolutePath());
代码中的某处。它将打印出程序的当前目录。
然后,只需将文件放在那里,或更改文件路径。
答案 1 :(得分:3)
要注意两件事:
.class
文件的位置所以:如果你有一个名为/home/javatest/File.txt
的文件,你的源代码在/home/javatest/
,你的.class
文件在同一个目录中,你的代码应该可以正常工作。 / p>
答案 2 :(得分:0)
如果您的类在包中并且您已将文件放置为兄弟,那么您的路径必须包含包路径。正如其他答案中所建议的那样,打印出工作目录的路径,以确定Java在哪里查找相对的文件。