我尝试使用相对路径打开文件,我的文件位于项目的根文件夹中。
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"));
如何从项目的根文件夹中读取文件?
答案 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!/....