diff --git a/yshop-common/src/main/java/co/yixiang/utils/FileUtil.java b/yshop-common/src/main/java/co/yixiang/utils/FileUtil.java index b56a7942..49820b51 100644 --- a/yshop-common/src/main/java/co/yixiang/utils/FileUtil.java +++ b/yshop-common/src/main/java/co/yixiang/utils/FileUtil.java @@ -24,6 +24,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.Random; /** * File工具类,扩展 hutool 工具包 @@ -140,13 +141,11 @@ public class FileUtil extends cn.hutool.core.io.FileUtil { * 将文件名解析成文件的上传路径 */ public static File upload(MultipartFile file, String filePath) { - Date date = new Date(); - SimpleDateFormat format = new SimpleDateFormat("yyyyMMddhhmmssS"); - String name = getFileNameNoEx(file.getOriginalFilename()); + //String name = getFileNameNoEx(file.getOriginalFilename()); String suffix = getExtensionName(file.getOriginalFilename()); - String nowStr = "-" + format.format(date); + StringBuffer nowStr = fileRename(); try { - String fileName = name + nowStr + "." + suffix; + String fileName = nowStr + "." + suffix; String path = filePath + fileName; // getCanonicalFile 可解析正确各种路径 File dest = new File(path).getCanonicalFile(); @@ -370,4 +369,20 @@ public class FileUtil extends cn.hutool.core.io.FileUtil { return accuracy; } + /** + * 上传文件重命名 + * @return 新的文件名 + */ + public static StringBuffer fileRename() { + SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); + String time = sdf.format(new Date()); + StringBuffer buf = new StringBuffer(time); + Random r = new Random(); + //循环取得三个不大于10的随机整数 + for (int x = 0; x < 3; x++) { + buf.append(r.nextInt(10)); + } + return buf; + } + }