我是新手,帮助在java中创建文件。我已经使用第三方工具创建了一个帮助文件“sample.chm”,将其添加到一个java程序中,其程序包名称为“help”,并使用运行时类调用并构建jar。当我运行jar文件时,它给出了一个错误,即“无法找到文件,空指针异常”。我已经给出了一个相对路径来识别文件,如“../help/sample.chm”仍然无法正常工作,我尝试使用各种类来识别路径。但仍然是同样的错误。
请你帮我修理它。
jar可以放在不同的系统中,应该打开这个帮助文件,没有任何问题。
我希望我的解释足以让你发现问题。
此致
Chandu
答案 0 :(得分:1)
如果jar中有文件,则无法像往常一样访问它。您可以像这样访问它:
URL helpFile=Thread.currentThread().getContextClassLoader().getResource("help/sample.chm");
上面使用的方法(getResource
)将返回URL
;如果您愿意,可以使用InputStream
代替getResourceAsStream
。
答案 1 :(得分:0)
除非出现更好的解决方案,否则至少需要解决方法。使用this.getClass().getClassLoader().getResource
方式获取jar内帮助文件的输入流。
将字节复制到目标系统临时文件夹中的新帮助文件,并将此解压缩文件与外部帮助文件查看器一起使用。