@Slf4j
public class MultipartFileUtil {
private MultipartFileUtil() { }
public static MultipartFile toMultipartFile(byte[] bytes, String fileName,String contentType) {
final FileItem fileItem = createFileItem(new ByteArrayInputStream(bytes), fileName,contentType);
return new CommonsMultipartFile(fileItem);
}
private static FileItem createFileItem(InputStream is, String fileName,String contentType) {
return createFileItem(is, "file", fileName,contentType);
}
private static FileItem createFileItem(InputStream is, String fieldName, String fileName,String contentType) {
final DiskFileItemFactory fac = new DiskFileItemFactory(10240, null);
FileItem fileItem = fac.createItem(fieldName, contentType, true, fileName);
final OutputStream fileItemOutStream;
try {
fileItemOutStream = fileItem.getOutputStream();
} catch (IOException e) {
log.error("获取FileItem输出流异常:{}", e.getMessage(), e);
throw new RuntimeException("系统异常");
}
try {
IOUtils.copy(is, fileItemOutStream);
} catch (IOException e) {
log.error("写入FileItem异常:{}", e.getMessage(), e);
throw new RuntimeException("系统异常");
}
return fileItem;
}
}
SpringBoot 创建 MultipartFile
最新推荐文章于 2024-03-13 10:30:20 发布