【转】SpringBoot——web项目下读取classpath下的文件心得
2021-05-16 03:30
标签:tcl window boot path puts 工具 sdn spring utils 在读取springBoot+gradle构建的项目时,如果使用传统的FileInputStream读取文件流或者ResourceUtils工具类的方式,都会失败,下面解释原因: 有两种常见的web容器: 第一种是普通的web项目,特点是jar/war压缩包会随着容器的启动解压缩成一个文件夹,当项目访问的时候,实际是访问文件夹,而非jar或者war包。该种方式下,用获取路径的方法:this.getClass().getResource("/")+fileName或者获取流的方法:this.getClass().getResourceAsStream(failName);都可以成功。 转自:https://blog.csdn.net/NNnora/article/details/80734326 【转】SpringBoot——web项目下读取classpath下的文件心得 标签:tcl window boot path puts 工具 sdn spring utils 原文地址:https://www.cnblogs.com/liaoguanwang/p/9749995.html一、读取文件的三种方式:
1. ResourceUtils工具类
import org.springframework.util.ResourceUtils;
//使用:
File file= ResourceUtils.getFile("classpath:test.txt");
2. FileInputStream文件流的方式读取
(该方式为按行读取,若不是按行处理,需要像图中将每行数据存在一个buffer中,然后转成String处理)3. ClassPathResource获取文件流的方式
ClassPathResource classPathResource = new ClassPathResource("test.txt");
获取文件:classPathResource .getFile();
获取文件流:classPathResource .getInputStream();
二、不同web容器读取文件的区别
classPathResource .getInputStream();获取文件流。
上一篇:六种排序
下一篇:webpack使用六
文章标题:【转】SpringBoot——web项目下读取classpath下的文件心得
文章链接:http://soscw.com/index.php/essay/86085.html