SpringBoot上传多个文件报错.tmp (系统找不到指定的文件。)

错误

Caused by: java.io.FileNotFoundException: C:\Users\Administrator\AppData\Local\Temp\tomcat.8080.8989524379785607827\work\Tomcat\localhost\ROOT\upload_1efc7d4e_d47b_4a32_9bc3_050b8e7bc457_00000001.tmp (系统找不到指定的文件。)
	at java.io.FileInputStream.open0(Native Method) ~[na:1.8.0_151]
	at java.io.FileInputStream.open(FileInputStream.java:195) ~[na:1.8.0_151]
	at java.io.FileInputStream.<init>(FileInputStream.java:138) ~[na:1.8.0_151]
	at org.apache.tomcat.util.http.fileupload.disk.DiskFileItem.write(DiskFileItem.java:404) ~[tomcat-embed-core-9.0.43.jar:9.0.43]
	at org.apache.catalina.core.ApplicationPart.write(ApplicationPart.java:120) ~[tomcat-embed-core-9.0.43.jar:9.0.43]
	... 52 common frames omitted

原因

上网查找以为是这个原因:解决使用Spring Boot、Multipartfile实现上传提示无法找到文件的问题

但经过测试,不是这个原因,最终检查代码,发现如下:

发现在上传保存多个文件时,居然是file这个MutipartFile类对象在调用transferTo()方法,而不是正在循环遍历的multipartFile对象,很粗心的错误,上面在保存单个文件时file已经调用过了transferTo()方法,保存结束了。

解决

解决方法当然是使用multipartFile调用transferTo()方法,来保存上传的文件。

保存下,记录下错误。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值