MultipartFile 转 File
public File multipartFile2File(MultipartFile multipartFile) {
String fileName = multipartFile.getOriginalFilename();
File file = new File(fileName);
// 将输入输出流的对象创建放在 try() 中会自动关闭
try (OutputStream out = Files.newOutputStream(file.toPath())) {
// 获取文件流,以文件流的方式输出到新文件
byte[] ss = multipartFile.getBytes();
for (int i = 0; i < ss.length; i++) {
out.write(ss[i]);
}
} catch (IOException e) {
log.error("文件读取异常", e);
}
return file;
}
// 在使用后如果需要将该文件删除,则
File f = new File(file.toURI());
if (f.delete()) {
log.info("删除成功");
} else {
log.info("删除失败");
}
File 转 MultipartFile
public MultipartFile file2MultipartFile(File file){
MultipartFile multipartFile = null;
try(FileInputStream fileInputStream = new FileInputStream(file)) {
multipartFile = new MockMultipartFile(file.getName(), file.getName(),
ContentType.APPLICATION_OCTET_STREAM.toString(), fileInputStream);
} catch (Exception e) {
log.error("文件读取异常", e);
}
return multipartFile;
}