为了账号安全,请及时绑定邮箱和手机立即绑定

Java将MultipartFile转换为大文件的文件

Java将MultipartFile转换为大文件的文件

森栏 2021-10-28 14:12:49
我正在使用以下方法将 MultipartFile 转换为 File :public File convert(MultipartFile file) throws IOException {        File convFile = new File(file.getOriginalFilename());        convFile.createNewFile();        FileOutputStream fos = new FileOutputStream(convFile);        fos.write(file.getBytes());        fos.close();        return convFile;}这工作很好,但对于大文件,我得到了这个例外:java.lang.OutOfMemoryError: Java heap space我添加了更多堆,但仍然有错误。那么是否有一种编程方法可以解决这个问题,可能在转换时将多部分文件拆分为较小的块,但我不确定如何对其进行编码。任何帮助或建议将不胜感激。
查看完整描述

3 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

是否MultipartFile属于 Spring 的包org.springframework.web.multipart?如果是这样,你可以这样做


  public File convert(MultipartFile file) throws IOException {

    File convFile = new File(file.getOriginalFilename());

    convFile.createNewFile();

      try(InputStream is = file.getInputStream()) {

        Files.copy(is, convFile.toPath()); 

      }

    return convFile;

  }


查看完整回答
反对 回复 2021-10-28
?
交互式爱情

TA贡献1712条经验 获得超3个赞

如何使用 transferTo:


public File convert(MultipartFile file) throws IOException 

 {

  File convFile = new File(file.getOriginalFilename());

  file.transferTo(convFile);

  return convFile;

}


查看完整回答
反对 回复 2021-10-28
  • 3 回答
  • 0 关注
  • 209 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信