在 Eclipse JAR 导出中包含文本文件?

Include text file in Eclipse JAR export?

我正在使用 FileInputStreamFile 对象中读取。当 Eclipse IDE 中的 运行 时,我的程序能够读取文本文件,但当它是 运行 作为 JAR 文件时则不能。

我将其导出为 JAR file 而不是 Runnable JAR file,并且我知道该文本文件已包含在 JAR 文件中,因为我将其提取出来进行检查。

这是我的文件结构:

您如何访问您的文件?您可能需要一个相对文件路径,例如“./mytext.txt”).

使用此模式:

InputStream is = new getClass().getResourceAsStream(
                        "/text.txt");

测试将您的文本文件包含在您要访问文件的 class 包中。

你应该使用类似的东西:

InputStream input = getClass().getResourceAsStream("/learnaboutfonts.txt");

请注意,诀窍是正确使用前导“/”。如果您不放置前导 /,那么它会在其调用的 class 的包中搜索文件。

我建议您将 learnaboutfonts.txt 放入 src 文件夹(而不是包内)并读取源代码中的文件,如下所示:

Resource resource = new ClassPathXmlApplicationContext().getResource("classpath:learnaboutfonts.txt");
InputStream is = resource.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));

而且br想怎么用就怎么用。快乐编码。