将MultipartFile转为File,使用注解掉的方法时错误:java.io.FileNotFoundException: C:\Users\Administrator\AppData\Local\Temp,改为FileUtils.copyInputStreamToFile(multipartFile.getInputStream(), file)即可
public File transferToFile(MultipartFile multipartFile) { //MultipartFile 转换为File
// 选择用缓冲区来实现这个转换即使用java 创建的临时文件 使用 MultipartFile.transferto()方法 。
File file = null;
try {
String originalFilename = multipartFile.getOriginalFilename();//"5900731f3004f9308252cd0aff5f6ac0.jpg"; //multipartFile.getOriginalFilename();
String[] filename = originalFilename.split("\\.");
file=File.createTempFile(filename[0] , "."+filename[1], new File("D:\\"));
//file = new File(new File("D:\\").getAbsolutePath()+ "/" + originalFilename); 错误
//multipartFile.transferTo(file); //错误
FileUtils.copyInputStreamToFile(multipartFile.getInputStream(), file);
file.deleteOnExit();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("service中path" + file.getPath());
return file;
}