spring boot 获取jar中,File对象的方法

将模板放在resource目录下,调试的时候能正常访问,但是打包成jar的时候访问不到。

解决办法:

其实不是访问不到,是获取File对象的时候无法获取到文件导致的,将文件写入临时目录:

private  File getResourceFile(String filePath) throws IOException {
        System.out.println("==================================");

        String[] split = filePath.split("/");
        String pathFile = System.getProperty("user.dir") + File.separator + split[split.length -1];
        File file = new File(pathFile);

        if(!file.exists()){
            file.createNewFile();
        } else {
            file.delete();
            file.createNewFile();
        }


        ClassPathResource resource = new ClassPathResource(filePath);
        String path = resource.getPath();

        System.out.println(" ==> path:" + path);
        System.out.println(" ==> data:");

        InputStream inputStream = resource.getInputStream();
        FileWriter fileWriter = new FileWriter(file, true);
        for (String line : IOUtils.readLines(inputStream)) {
            System.out.println(line);
            fileWriter.write(line);
        }

        fileWriter.flush();
        if(fileWriter != null){
            fileWriter.close();
        }

        System.out.println("====================================");
        System.out.println("");

        return file;
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值