|
|
|
@ -3,6 +3,7 @@ package com.chanko.yunxi.mes.framework.common.util.io;
|
|
|
|
|
import cn.hutool.core.io.FileTypeUtil;
|
|
|
|
|
import cn.hutool.core.io.FileUtil;
|
|
|
|
|
import cn.hutool.core.io.file.FileNameUtil;
|
|
|
|
|
import cn.hutool.core.lang.UUID;
|
|
|
|
|
import cn.hutool.core.util.IdUtil;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import cn.hutool.crypto.digest.DigestUtil;
|
|
|
|
@ -64,7 +65,7 @@ public class FileUtils {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 生成文件路径
|
|
|
|
|
* 生成文件路径(存在问题!慎用!同文件多处使用将致错乱)
|
|
|
|
|
*
|
|
|
|
|
* @param content 文件内容
|
|
|
|
|
* @param originalName 原始文件名
|
|
|
|
@ -81,4 +82,20 @@ public class FileUtils {
|
|
|
|
|
return sha256Hex + '.' + FileTypeUtil.getType(new ByteArrayInputStream(content));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 生成文件路径 uuid
|
|
|
|
|
*
|
|
|
|
|
* @param originalName 原始文件名
|
|
|
|
|
* @return path,唯一不可重复
|
|
|
|
|
*/
|
|
|
|
|
public static String generatePath(String originalName) {
|
|
|
|
|
String uuid = UUID.randomUUID().toString(true);
|
|
|
|
|
// 情况一:如果存在 name,则优先使用 name 的后缀
|
|
|
|
|
if (StrUtil.isNotBlank(originalName)) {
|
|
|
|
|
String extName = FileNameUtil.extName(originalName);
|
|
|
|
|
return StrUtil.isBlank(extName) ? uuid : uuid + "." + extName;
|
|
|
|
|
}
|
|
|
|
|
return uuid;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|