java.nio.file.NoSuchFileException: C:\Users\80006726\AppData\Local\Temp\undertow.8095.12835023798377643898\undertow8894625727258599175upload
时间: 2023-12-14 15:02:47 浏览: 230
根据提供的引用内容,出现`java.nio.file.NoSuchFileException`异常的原因是在执行`transferTo(file)`方法时,系统缓存的临时文件已被删除,导致找不到该文件。解决方法是在执行`transferTo(file)`方法之前,先将临时文件复制到指定目录下,再执行`transferTo(file)`方法。
以下是Java代码示例:
```java
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class FileUploadUtil {
public static void saveFile(MultipartFile file, String uploadDir) throws IOException {
// 创建上传目录
Path uploadPath = Paths.get(uploadDir);
if (!Files.exists(uploadPath)) {
Files.createDirectories(uploadPath);
}
// 复制临时文件到上传目录
Path tempPath = Files.createTempFile(uploadPath, "", "");
Files.copy(file.getInputStream(), tempPath, StandardCopyOption.REPLACE_EXISTING);
// 保存文件
File dest = new File(uploadDir + File.separator + file.getOriginalFilename());
file.transferTo(dest);
}
}
```
阅读全文