有些时候我们需要读取并释放jar包内文件到jar包外。这样其实很简单,使用InputStream和OutputStream即可。
文件在jar包中时,一般是先读取他们,再输出。以我这里为例:
可以看到我这里的代码文件目录结构,代码文件夹根目录下有一个a.txt,还有一个test文件夹,其中有一个Test类和b.txt,sda.pdf。
打包为jar后结构不变,如下:
现在演示文件输出,把jar包内的test文件夹里面的那个sda.pdf输出,代码如下:
InputStream is = Test.class.getResourceAsStream("sda.pdf");// 流式读取jar包内文件,使用classpath
File f = new File("E:\\中转\\tio\\a\\out.pdf");// 指定输出文件
File fp = new File(f.getParent());// 输出文件的父目录
if