From ffbfffa0051d620e3b15a678c8b68a4386d54a41 Mon Sep 17 00:00:00 2001 From: skyyan Date: Fri, 19 Jul 2024 18:01:35 +0800 Subject: [PATCH] =?UTF-8?q?java.io.FileNotFoundException:=20=20=20(?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E6=89=BE=E4=B8=8D=E5=88=B0=E6=8C=87=E5=AE=9A?= =?UTF-8?q?=E7=9A=84=E8=B7=AF=E5=BE=84=E3=80=82)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../javpower/javavision/util/FileUtil.java | 40 ++++++++----------- 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/github/javpower/javavision/util/FileUtil.java b/src/main/java/com/github/javpower/javavision/util/FileUtil.java index 1a425ce..cdb41ec 100644 --- a/src/main/java/com/github/javpower/javavision/util/FileUtil.java +++ b/src/main/java/com/github/javpower/javavision/util/FileUtil.java @@ -1,43 +1,35 @@ package com.github.javpower.javavision.util; -import cn.hutool.core.date.DatePattern; -import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.UUID; import com.github.javpower.javavision.config.FileProperties; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.FilenameUtils; -import org.apache.commons.lang3.RandomStringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; -import java.io.File; import java.io.IOException; -import java.util.Date; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; @Slf4j @Service public class FileUtil { @Autowired private FileProperties fileProperties; - public String getPath(MultipartFile file) throws IOException { - String originalFilename = file.getOriginalFilename(); - log.info("originalFilename:" + originalFilename); + + public String getPath(MultipartFile file)throws IOException{ + // 获取原始文件名 + String originalFileName = file.getOriginalFilename(); // 获取文件后缀 - String extension = FilenameUtils.getExtension(originalFilename); - String newFileName = DateUtil.format(new Date(), DatePattern.PURE_DATETIME_MS_PATTERN) + RandomStringUtils.randomNumeric(6) + "." + extension; - log.info("newFileName:" + newFileName); - // 本地文件上传路径 - String uploadPath = fileProperties.getUploadPath(); - File uploadDir = new File(uploadPath); - // 上传目录不存在,则直接创建 - if (!uploadDir.exists()) { - uploadDir.mkdirs(); - } - // 上传文件到本地目录 - File uploadFile = new File(uploadDir, newFileName); - log.info("uploadFile:" + uploadFile); - file.transferTo(uploadFile); - String imgPath = uploadPath+newFileName; - return imgPath; + String extension = FilenameUtils.getExtension(originalFileName); + String target= UUID.fastUUID().toString().replace("-","")+"."+extension; + // 构建目标文件路径 + Path targetLocation = Paths.get(fileProperties.getUploadPath()).resolve(target); + // 将文件保存到目标路径 + Files.copy(file.getInputStream(), targetLocation); + String filePath=targetLocation.toString(); + return filePath; } } -- Gitee