Tag: 资源

访问.jar文件中的文件

可能重复: 如何从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文件后抛出exception。 我已经研究过使用InputStream,FileInputStream但似乎找不到可行的解决方案。 如何让jar文件识别资源?

jar中的classpath资源

我有一个项目A,它包含一些java文件和一个类路径资源R.txt。 在项目中我使用ClassLoader.getSystemResource(“R.txt”); 检索R.txt。 然后我有一个项目B,其中包含项目A的jar文件。 现在getSystemResource(“R.txt”)找不到文本文件(是的,它仍然在jar文件的根目录中)。 即使尝试在其他网站上建议的“/R.txt”也行不通。 有任何想法吗?

从jar获取资源

我有文件jar: myJar/res/endingRule.txt myJar/wordcalculator/merger/Marge.class 在Marge.java我有代码: private static final String ENDINGS_FILE_NAME = “res/endingRule.txt”; …. InputStream inputStream = getClass().getClassLoader().getResourceAsStream(ENDINGS_FILE_NAME); ….. 但是在这个inputStream为null之后。 如何使用资源? 为什么空?