init
This commit is contained in:
67
app/core/utils/format.py
Normal file
67
app/core/utils/format.py
Normal file
@@ -0,0 +1,67 @@
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
def formatSize(size):
|
||||
"""格式化文件大小"""
|
||||
for unit in ["B", "KB", "MB", "GB", "TB"]:
|
||||
if size < 1024:
|
||||
return f"{size:.2f} {unit}"
|
||||
size /= 1024
|
||||
return f"{size:.2f} PB"
|
||||
|
||||
|
||||
def formatDate(date_str):
|
||||
"""格式化日期时间"""
|
||||
try:
|
||||
# 处理带小数秒的情况
|
||||
if "." in date_str:
|
||||
# 分割日期和小数秒部分
|
||||
date_part, fractional_part = date_str.split(".", 1)
|
||||
# 去除末尾的'Z'并截取前6位小数
|
||||
fractional_sec = fractional_part.rstrip("Z")[:6]
|
||||
# 重新组合日期字符串
|
||||
normalized_date_str = f"{date_part}.{fractional_sec}Z"
|
||||
date_time = datetime.strptime(normalized_date_str, "%Y-%m-%dT%H:%M:%S.%fZ")
|
||||
else:
|
||||
# 处理没有小数秒的情况
|
||||
date_time = datetime.strptime(date_str, "%Y-%m-%dT%H:%M:%SZ")
|
||||
except ValueError:
|
||||
# 如果所有格式都失败,返回原始字符串
|
||||
return date_str
|
||||
|
||||
return date_time.strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
||||
|
||||
def getFileIcon(fileType, fileName):
|
||||
if fileType == "file":
|
||||
suffix = fileName.split(".")[-1].lower()
|
||||
icon_map = {
|
||||
"txt": "Txt.svg",
|
||||
"png": "Image.svg",
|
||||
"jpg": "Image.svg",
|
||||
"svg": "Image.svg",
|
||||
"jpeg": "Image.svg",
|
||||
"bmp": "Image.svg",
|
||||
"gif": "Gif.svg",
|
||||
"xls": "Excel.svg",
|
||||
"xlsx": "Excel.svg",
|
||||
"doc": "Word.svg",
|
||||
"docx": "Word.svg",
|
||||
"pdf": "Pdf.svg",
|
||||
"ppt": "PPT.svg",
|
||||
"mp4": "Video.svg",
|
||||
"mkv": "Video.svg",
|
||||
"mp3": "music.svg",
|
||||
"wav": "music.svg",
|
||||
"zip": "Zip.svg",
|
||||
"rar": "Zip.svg",
|
||||
"csv": "Excel.svg",
|
||||
"db": "Database.svg",
|
||||
"py": "Programme.svg",
|
||||
"c": "Programme.svg",
|
||||
"cpp": "Programme.svg",
|
||||
"go": "Programme.svg",
|
||||
}
|
||||
return icon_map.get(suffix, "None.svg") # 默认图标
|
||||
else:
|
||||
return "Folder.svg"
|
||||
Reference in New Issue
Block a user