JAVA 获取Target中Resources(Jar包中classes)文件夹下的文件并以输入流的形式使用

@[TOC](JAVA 获取Target中Resources(Jar包中classes)文件夹下的文件并以输入流的形式使用)

在一般的JavaWeb项目中,会有根据模板导出的功能,但是大多数方法在idea中可以说是随便跑,但是打成jar包部署到服务器上之后就发现会报一些莫名其妙的错误,比如找不到文件(java.io.FileNotFoundException)或者是直接空指针(NullPointerException)。

此图是idea项目中的文件结构截图

此图是target包中即jar包中文件结构截图

现在的目的是可以获取target包中(即jar包)的demo.docx文件并且转换为inputstream方便后续使用。

//使用的包
import java.io.*;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;

//关键代码
InputStream in = null;
/**此处resourceLoader的实例化省略,因为调用方式也许不同,故而没有贴出
*可以在util中直接实例化,即ResourceLoader resourceLoader,但会标注静态方法之类的问题,所以我使用的
*不是这种方法,而是使用的@AutoWired注解或者@Resource注解
**/
Resource resource = resourceLoader.getResource("classpath:file"+ sepa +"demo.docx");
in = resource.getInputStream();
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值