public Map<String,Object> uploadCsvFile(@RequestParam("file") MultipartFile file) throws IOException, ParseException {
Map<String, Object> resultMap = new HashMap<>();
String originalFilename = file.getOriginalFilename();
String suffixName = originalFilename.substring(originalFilename.lastIndexOf("."));
if (!".csv".equals(suffixName)) {
resultMap.put("flag", 0);
resultMap.put("msg","请上传csv文件!");
return resultMap;
}
String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();
File file1 = new File(path,originalFilename);
if(!file1.getParentFile().exists()){
file1.getParentFile().mkdirs();
}
file.transferTo(file1);
File localFile = new File(file1.toString());
if(!localFile.exists()){
localFile.getParentFile().mkdir();
try {
localFile.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
FileInputStream fileInputStream = new FileInputStream(localFile);
List<SdttClient> list = new ArrayList<>();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
InputStreamReader is = new InputStreamReader(fileInputStream, "utf8");
BufferedReader reader = new BufferedReader(is);
reader.readLine();
String line = null;
while ((line = reader.readLine()) != null) {
XXXX xxx = new XXXX();
String item[] = line.split(",");
if (getValue(item, 0) != null) {
xxx.id("".equals(getValue(item,0))?null:Integer.parseInt(getValue(item, 0)))
.set......
}
list.add(sdtt);
}
resultMap = sdttClientService.uploadCsvFile(list);
return resultMap;
}
public static String getValue(String[] item, int index) {
if (item.length > index) {
String value = item[index];
return value;
}
return "";
}