SpringMVC中如何将MultipartFile对象转换为File类型?
- 内容介绍
- 文章标签
- 相关推荐
本文共计369个文字,预计阅读时间需要2分钟。
在SpringMVC上传文件时,接收到的文件格式为MultipartFile,但在很多场景下,仍需以File格式处理文件。以下为将MultipartFile转换为File的方法:
javaimport org.springframework.web.multipart.MultipartFile;
public File convertMultipartFileToFile(MultipartFile file) throws IOException { // 获取文件名 String fileName=file.getOriginalFilename(); // 获取文件路径 String filePath=path/to/save/ + fileName; // 创建File对象 File newFile=new File(filePath); // 将MultipartFile转换为File file.transferTo(newFile); return newFile;}
在使用 SpringMVC 上传文件时,接收到的文件格式为 MultipartFile,但是在很多场景下使用都需要File格式的文件,记录下以便日后使用。
以下mFile为MultipartFile文件
此方法会在本地产生临时文件,使用完毕需要删除
在网上搜索未发现可直接使用的不产生临时文件的方法,查到几个本地测试皆无法通过,如哪位有不产生临时文件的方法,请多多指教👍
MultipartFile 转为 File
File file = new File(mFile.getOriginalFilename()); FileUtils.copyInputStreamToFile(mFile.getInputStream(), file); // 会在本地产生临时文件,用完后需要删除 if (file.exists()) { file.delete(); }
MultipartFile 获取 Base64 编码
File file = new File(mFile.getOriginalFilename()); FileUtils.copyInputStreamToFile(mFile.getInputStream(), file); try (FileInputStream fis = new FileInputStream(file)) { byte[] buf = new byte[(int) file.length()]; fis.read(buf); return new String(Base64.encodeBase64(buf), StandardCharsets.ISO_8859_1); } catch (IOException e) { log.error(e.getMessage(), e); } finally { if (file.exists()) { file.delete(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计369个文字,预计阅读时间需要2分钟。
在SpringMVC上传文件时,接收到的文件格式为MultipartFile,但在很多场景下,仍需以File格式处理文件。以下为将MultipartFile转换为File的方法:
javaimport org.springframework.web.multipart.MultipartFile;
public File convertMultipartFileToFile(MultipartFile file) throws IOException { // 获取文件名 String fileName=file.getOriginalFilename(); // 获取文件路径 String filePath=path/to/save/ + fileName; // 创建File对象 File newFile=new File(filePath); // 将MultipartFile转换为File file.transferTo(newFile); return newFile;}
在使用 SpringMVC 上传文件时,接收到的文件格式为 MultipartFile,但是在很多场景下使用都需要File格式的文件,记录下以便日后使用。
以下mFile为MultipartFile文件
此方法会在本地产生临时文件,使用完毕需要删除
在网上搜索未发现可直接使用的不产生临时文件的方法,查到几个本地测试皆无法通过,如哪位有不产生临时文件的方法,请多多指教👍
MultipartFile 转为 File
File file = new File(mFile.getOriginalFilename()); FileUtils.copyInputStreamToFile(mFile.getInputStream(), file); // 会在本地产生临时文件,用完后需要删除 if (file.exists()) { file.delete(); }
MultipartFile 获取 Base64 编码
File file = new File(mFile.getOriginalFilename()); FileUtils.copyInputStreamToFile(mFile.getInputStream(), file); try (FileInputStream fis = new FileInputStream(file)) { byte[] buf = new byte[(int) file.length()]; fis.read(buf); return new String(Base64.encodeBase64(buf), StandardCharsets.ISO_8859_1); } catch (IOException e) { log.error(e.getMessage(), e); } finally { if (file.exists()) { file.delete(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

