可能是重复问题:
如何从Java jar文件中读取资源文件?
在搜索了几个小时后,我因为这个问题完全疯了。我也看到了站点上的问题变体,但似乎无法让它正常工作。一个JFrame需要从一个ini文件中读取数据,我创建了一个打开该文件的方法。该文件存储在jar文件内部的名为"resources"的文件夹中。
private BufferedReader openIniFile(String filename){
BufferedReader brReader = null;
try{
File fileObj = new File(this.getClass().getResource("/resources/" + filename).toURI()); // The fileobject of the file to read
if(fileObj.exists())
brReader = new BufferedReader(new FileReader(fileObj));
} catch(Exception e){
System.err.println("Exception while opening file: " + e.getMessage());
}
return null;
}
当我编译后运行代码时,这当然完全正常,但将其导出为.jar文件后会引发异常。我已经尝试使用InputStream、FileInputStream等方法,但似乎找不到可行的解决方案。
我该如何使jar文件能够识别该资源?