【发布时间】:2013-05-14 14:40:38
【问题描述】:
在过去的 3 个晚上,我一直在疯狂地试图找到这个问题的答案。
所以我有一个 java 程序,我希望它是 jar 格式,我希望它能够读取文本和图像文件。
我使用this.getClass.getResource("") 方法使图像文件工作正常,但是我无法让程序正确访问 .jar 中的文本文件,当我提取 jar 时,文本文件在那里,所以我知道它不是文本文件不在 jar 中的简单错误
这是我尝试使用的,但它不起作用(它可以在没有 jar 的情况下工作,但现在在 jar 中)
URL lurl = this.getClass().getResource("list.txt");
BufferedReader in3 = new BufferedReader(new FileReader(lurl.getFile()));
修复?
【问题讨论】:
-
您的错误堆栈跟踪是什么,您必须将资源视为 InputStream,而不仅仅是您可以使用 FileReader 打开的另一个文件。
-
不确定你的意思,你说的是这个方法吗? this.getClass().getResourceAsStream("文件名");
-
是的,使用 getResourceAsStream
-
但是 FileReader 没有输入流的构造函数
标签: java file text jar executable-jar