JavaでMultipartFileとFileを相互に変換する方法は何ですか?
Javaでは、MultipartFileとFileを互いに変換することができます。以下に例を示します:
MultipartFileをFileに変換する:
MultipartFile multipartFile = ...; // 获取到MultipartFile对象
// 创建临时文件
File file = File.createTempFile(multipartFile.getOriginalFilename(), ".tmp");
// 将MultipartFile写入临时文件
multipartFile.transferTo(file);
// 使用临时文件进行操作
// ...
// 删除临时文件
file.delete();
FileをMultipartFileに変換する。
File file = ...; // 获取到File对象
// 创建MultipartFile对象
DiskFileItem fileItem = new DiskFileItem("file", Files.probeContentType(file.toPath()), false, file.getName(), (int) file.length(), file.getParentFile());
fileItem.getOutputStream().write(Files.readAllBytes(file.toPath()));
MultipartFile multipartFile = new CommonsMultipartFile(fileItem);
// 使用MultipartFile对象进行操作
// ...
Springフレームワークを使用する場合、Controller内でMultipartFileを直接パラメータとして受け取ることができるため、変換の必要はありません。