FileReader搜索文件的根本位置是什么?

时间:2014-07-19 20:54:31

标签: java

我试图加载文件以供扫描仪使用,如下所示:

try {
        Scanner scanner = new Scanner(new FileReader("map.txt"));
    }catch (FileNotFoundException e) {
        e.printStackTrace();
    }

但是,即使我将map.txt文件放在类文件夹中,我也会收到FileNotFoundException错误。我还创建了特殊文件夹,并将其标记为IntelliJ IDEA中的资源根,但它仍然无法正常工作。我怎么知道FileReader在哪里搜索文件呢?

1 个答案:

答案 0 :(得分:4)

这可能会对你有所帮助。使用File#getAbsolutePath()检查路径。

File reader = new File("abc.txt");
System.out.println(reader.getAbsolutePath());

从项目中读取的更多方法

// Read from resources folder parallel to src in your project
File file1 = new File("resources/abc.txt");
System.out.println(file1.getAbsolutePath());

// Read from src/resources folder
File file2 = new File(getClass().getResource("/resources/abc.txt").toURI());
System.out.println(file2.getAbsolutePath());