1、背景
创建了一个springBoot工程,并在resources下面创建了一个config目录,并上传了一个text.txt目录
2、读取文件2种方式
1、
Resource.class.getClassLoader().getResourceAsStream("config/test.txt")
这种方式可以来读取文件,默认从classpath中找文件(文件放在resources目录下),name不能带“/”,否则会抛空指针。
2、
Resource.class.getResourceAsStream("/config/test.txt")
这种情况是没有getClassLoader()的情况,如果name以"/"开头,那么绝对路径是/后边跟的名字 (也是从classpath下开始算起)
核心:自己去看看target下面目录的编译情况其实就一目了然
参考资料:https://blog.csdn.net/feeltouch/article/details/83796764
3、读取properties文件
直接上代码
Properties prop=new Properties();
prop.load(Resource.class.getClassLoader().getResourceAsStream("config/test.properties"));
String aaa = prop.getProperty("aaa");
System.out.println(aaa);
- 这有一点事properties的乱码问题 记得把properties文件设置成 utf-8
- 设置步骤 File -> Settings->File Encodings -> Defaule encoding for properties files 属性设置成utf-8
- 选中Transparent native-to-ascii conversion