使用Java的相对路径打开文本文件(在Eclipse中)

时间:2014-06-17 11:43:09

标签: java eclipse relative-path

我尝试使用相对路径打开文件,我的文件位于项目的根文件夹中。

BufferedReader reader = new BufferedReader(new FileReader("text.h"));

那没有用。

所以我打印了工作目录,但这导致我进入安装了eclipse的目录。

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

我的项目结构:

Project
       --bin
       --core
           text.h
           --src
              text.h 
              --com
                 --home
                     --core
                         Main.java
                         text.h
       --editor
       --ui
       text.h

我已将文本文件复制到我的项目目录中的不同位置,并且我尝试了不同的路径,但没有一个有效。

如果我将文件复制到安装Eclipse的目录中,那么我可以使用以下路径读取该文件。

BufferedReader reader = new BufferedReader(new FileReader("text.h"));

如何从项目的根文件夹中读取文件?

2 个答案:

答案 0 :(得分:1)

String workingDir = System.getProperty("user.dir");


BufferedReader reader = new BufferedReader(new FileReader(workingDir+"\text.h"));

workingDir的值给出了当前工作目录的路径

试试这个可以帮助你

答案 1 :(得分:0)

URL url = getClass().getProtectionDomain().getCodeSource().getLocation();
System.out.println("URL " + url.toExternalForm());

URL file:/D:/workspace/myproject/bin/

或点击jar时:

URL file:jar:/D:/workspace/myproject/bin/myproject.jar!/....