结合个人的一些拙见,与网上的一些资料整理出来的思路:
  暂且这样认为:
    以jar的方式运行且需要获取resource下的文件,以class.getResource(*)获取到的路径是jar:file:协议开头.
  结合上述的结论得出获取方式:
    这类路径在文件系统中不会认为是一个有效的路径。所以只能用InputStream去读取文件.


PathMatchingResourcePatternResolver pathMatchingResourcePatternResolver = new PathMatchingResourcePatternResolver();
Resource[] certifications = pathMatchingResourcePatternResolver.getResources("certification/*");
for (Resource certification : certifications) {
InputStreamReader reader = new InputStreamReader(certification.getInputStream());
StringBuilder builder = StrUtil.builder();
CharBuffer buffer = CharBuffer.allocate(8192);

while(-1 != reader.read(buffer)) {
builder.append(buffer.flip().toString());
}

System.out.println(buffer);
}
posted on 2021-11-18 11:33  远路z  阅读(185)  评论(0编辑  收藏  举报