一般我们上传图片通过springMVC上传图片可能会用到MultipartHttpServletRequest来获取文件,获取文件的过程中可能需要进行文件的转换,会报如标题的错误。我们只要做个如下判断就好了。当你已经打开文件的时候是无法删除文件的,只能在文件被打开的时候判断是否已经存在,存在就直接返回文件,代码如下就不废话了
public static File transMultipartFileToFile(MultipartFile srcFile) {
if (srcFile == null) {
return null;
}
String localTempDir = "/tmp/oet/file";
String fileName = srcFile.getOriginalFilename();
File tempFile = null;
try {
tempFile = new File(localTempDir + fileName);
if (!tempFile.getParentFile().exists()) {
tempFile.getParentFile().mkdirs();
}
if (!tempFile.exists()) {
tempFile.createNewFile();
}
else{
return tempFile;
}
srcFile.transferTo(tempFile);
} catch (Exception e) {
LOGGER.error("转化图片异常:", e);
}
return tempFile;
}