From ba7ae8da9eedae675a7b077d680e2752b1225b5f Mon Sep 17 00:00:00 2001 From: hzj <826100833@qq.com> Date: Wed, 10 Jun 2026 16:08:37 +0800 Subject: [PATCH] =?UTF-8?q?oss=E5=85=BC=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/njcn/oss/utils/FileStorageUtil.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pqs-common/common-oss/src/main/java/com/njcn/oss/utils/FileStorageUtil.java b/pqs-common/common-oss/src/main/java/com/njcn/oss/utils/FileStorageUtil.java index 5e1ccc93a..6b7d45601 100644 --- a/pqs-common/common-oss/src/main/java/com/njcn/oss/utils/FileStorageUtil.java +++ b/pqs-common/common-oss/src/main/java/com/njcn/oss/utils/FileStorageUtil.java @@ -154,7 +154,7 @@ public class FileStorageUtil { filePath = dir + minIoUtils.minFileName(multipartFile.getOriginalFilename()); obsUtil.uploadMultipart(multipartFile, filePath); } else if (generalInfo.getBusinessFileStorage() == GeneralConstant.AliYUN_OSS) { - filePath = dir.endsWith("/")?dir+multipartFile.getOriginalFilename():dir+"/"+multipartFile.getOriginalFilename(); + filePath = dir.endsWith("/")?dir+getFileNameWithoutPath(multipartFile):dir+"/"+getFileNameWithoutPath(multipartFile); aliYunOssUtils.uploadFile(dir, multipartFile); } else { try { @@ -167,6 +167,15 @@ public class FileStorageUtil { } return filePath; } + public static String getFileNameWithoutPath(MultipartFile file) { + String originalFilename = file.getOriginalFilename(); + if (originalFilename == null) { + return null; + } + // 统一分隔符为 '/',再取最后一部分 + String normalized = originalFilename.replace('\\', '/'); + return normalized.substring(normalized.lastIndexOf('/') + 1); + } /*** * 上传InputStream流,