eclipse中的java文件相对路径

Иго*_*чић 1 java io file path bufferedreader

三天我试图弄清楚如何使用相对文件路径读取文件.在eclipse中,这个编译并且工作得很好,但是当我导出app时.它说它找不到文件.这是我工作的截图和代码.

这段代码有效,但只有在eclipse中,它才能编译并完美地完成工作.但是当我将其导出为runnable jar文件时,我得到一个错误,它无法找到licenca.txt

 BufferedReader in = new BufferedReader(new FileReader(new File("licenca.txt").getPath()));
        String str;
        while ((str = in.readLine()) != null) {
      taLicenca.append(str + "\n");

    }
Run Code Online (Sandbox Code Playgroud)

这是我的项目文件的屏幕截图

文件http://img207.imageshack.us/img207/5317/63432445.png

我试过使用扫描仪功能,结果仍然相同,它在eclipse中工作,但在导出时不起作用.这是错误消息:

错误http://img98.imageshack.us/img98/1771/greskaa.png

duf*_*ymo 6

我敢打赌,如果你把那个文件放到类路径中它会起作用.

像这样更改你的代码:

InputStream is = this.getClass().getClassLoader().getResourceAsStream("licenca.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(is));
String str;
while ((str = in.readLine()) != null) {
    taLicenca.append(str + "\n");
}
Run Code Online (Sandbox Code Playgroud)

试试看吧.