@ApiOperation(value = "上传单文件")
@PostMapping(value = "/uploadFile")
@CrossOrigin
@ResponseBody
public Results<Object> uploadFile(@RequestParam MultipartFile multfile) {
try {
if (EmptyUtils.isNotEmpty(multfile)) {
long size = multfile.getSize();
if (size > 0) {
// 获取文件名
String fileName = multfile.getOriginalFilename();
// 获取文件后缀
String prefix=fileName.substring(fileName.lastIndexOf("."));
// 用uuid作为文件名,防止生成的临时文件重复
final File excelFile = File.createTempFile(UUID.randomUUID().toString(), prefix);
multfile.transferTo(excelFile);
String fileUrl = qiNiuUtil.fileUpload(excelFile, multfile.getOriginalFilename());
//程序结束时,删除临时文件
deleteFile(excelFile);
return new Results<>(MessageCode.CODE_200, MESSAGE_200, fileUrl);
}
}
return new Results<>(MessageCode.CODE_201, MESSAGE_201, null);
} catch (Exception e) {
log.error("LiveRoomController---》delete:" + e.getMessage());
return new Results<>(MessageCode.CODE_500, MESSAGE_500, null);
}
}
@ApiOperation(value = "上传多文件")
@PostMapping(value = "/uploadFile")
@CrossOrigin
@ResponseBody
public Results<Object> uploadFile(@RequestParam MultipartFile[] multipartFiles) {
try {
if (EmptyUtils.isNotEmpty(multipartFiles)) {
List<String> results = new ArrayList<>();
for (int i = 0; i < multipartFiles.length; i++) {
MultipartFile multipartFile = multipartFiles[i];
long size = multipartFile.getSize();
if (size > 0) {
// 获取文件名
String fileName = multipartFile.getOriginalFilename();
// 获取文件后缀
String prefix=fileName.substring(fileName.lastIndexOf("."));
// 用uuid作为文件名,防止生成的临时文件重复
final File excelFile = File.createTempFile(UUID.randomUUID().toString(), prefix);
multipartFile.transferTo(excelFile);
String fileUrl = qiNiuUtil.fileUpload(excelFile, multipartFile.getOriginalFilename());
//程序结束时,删除临时文件
deleteFile(excelFile);
results.add(fileUrl);
}
}
return new Results<>(MessageCode.CODE_200, MESSAGE_200, results);
}
return new Results<>(MessageCode.CODE_201, MESSAGE_201, null);
} catch (Exception e) {
log.error("LiveRoomController---》delete:" + e.getMessage());
return new Results<>(MessageCode.CODE_500, MESSAGE_500, null);
}
}
/**
* 删除文件
*
* @param files
*/
private void deleteFile(File... files) {
for (File file : files) {
if (file.exists()) {
file.delete();
}
}
}
MultipartFile上传单文件或多文件,转成file
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.