1. 程式人生 > >文件上傳到服務器

文件上傳到服務器

上傳文件 lag mes indexof bool index origin 失敗 filename

/**
* SpringBoot上傳文件
* @param request
* @param path 文件路徑
* @return
*/
public static Object uploadFile(HttpServletRequest request, String path){
MultipartHttpServletRequest params=((MultipartHttpServletRequest) request);
MultiValueMap<String, MultipartFile> filesMap = params.getMultiFileMap();
List<String> fileNames = new ArrayList<String>();
JSONObject json = new JSONObject();
boolean flag = true;
String errorFile = "";
ERROR:
for (String key: filesMap.keySet() ) {
List<MultipartFile> files = filesMap.get(key) ;
for (MultipartFile file :files
) {
String filename = file.getOriginalFilename();
String serverFileName = String.valueOf(new Date().getTime())+ (int)(Math.random()*100)
+filename.substring(filename.indexOf("."));

try {
filename = writeFile(file.getBytes(), path, serverFileName);
if(StringUtil.isNotEmpty(filename)){
//導入成功
fileNames.add(serverFileName);
}

} catch (Exception e) {
flag = false;
errorFile = filename;
break ERROR;
}
}
}
//如果有一個文件失敗了,則返回false 已經成功的文件在fileNames(List<String>)內存儲,失敗的文件在errorFile(String)
json.put("success",flag);
json.put("fileNames",fileNames);
json.put("errorFile",errorFile);
return json;
}

文件上傳到服務器