package com.hxkj.fsslr.core.utils;
import java.io.File;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
public class MultipleFileUtils {
public static String uploadOneMultipleFile(HttpServletRequest request,String fileProUrl,boolean isNewName) throws Exception{
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter=multipartRequest.getFileNames();
MultipartFile inputFile = multipartRequest.getFile(iter.next());
String realName = inputFile.getOriginalFilename();
if(isNewName == true){
String ext = realName.substring(realName.lastIndexOf("."));
realName = TimeUtils.getImageNamePrefix() + ext;
}
File file = makeDirsAndCreateFileName(fileProUrl,realName);
inputFile.transferTo(file);
String realUrl = fileProUrl + "/" + realName;
return realUrl;
}
public static List<String> uploadManyMultipleFile(HttpServletRequest request,String fileProUrl,boolean isNewName) throws Exception{
List<String> realUrls = new ArrayList<>();
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter=multipartRequest.getFileNames();
while(iter.hasNext()){
MultipartFile inputFile = multipartRequest.getFile(iter.next());
String realName = inputFile.getOriginalFilename();
if(isNewName == true){
String ext = realName.substring(realName.lastIndexOf("."));
realName = TimeUtils.getImageNamePrefix() + ext;
}
File file = makeDirsAndCreateFileName(fileProUrl,realName);
inputFile.transferTo(file);
String realUrl = fileProUrl + "/" + realName;
realUrls.add(realUrl);
}
return realUrls;
}
private static File makeDirsAndCreateFileName(String path,String fileName){
File file = new File(path);
if(!file.exists()){
file.mkdirs();
}
file = new File(path,fileName);
return file;
}
}