参考:
https://blog.csdn.net/u013084266/article/details/112238267
https://blog.csdn.net/qq_18748427/article/details/78606432
现象:
springboot项目读文件流进行数据清洗,本地环境可以读取到数据源,部署到test环境和st环境则报错读不到数据源:cannot be resolved to absolute file path because it does not reside in the file system: jar
原因:
打包之后,spring没办法通过File的形式访问jar包里面的文件。
解决方式1:
使用resource.getInputStream()读取文件内容。
报错代码:
public void dataUpdate2() {
Long startTime = System.currentTimeMillis();
String fileName = "mbk_ctr_usr_detail-2.txt";
int i=0;
int j=0;
int k=0;
int h=0;
try {
File file = ResourceUtils.getFile("classpath:" + fileName);
if (file.isFile() && file.exists()) {
InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
BufferedReader br = new BufferedReader(isr);