# 系统文件库
import os
import shutil
# 创建文件操作类
class MyFile:
def __init__(self,file_dir="./static/upload"):
# 初始路径
self.file_dir = file_dir
# 创建文件夹
def mkdir(self,id):
# 判断 这个文件夹不存在在创建 创建时以用户id为文件夹名称
if not os.path.exists(self.file_dir+"/"+str(id)):
os.mkdir(self.file_dir+"/"+str(id))
# 删除文件
def remove(self,id,filename):
os.remove(self.file_dir+"/"+str(id)+"/"+filename)
# 注销整体目录
def remove_all(self,id):
shutil.rmtree(self.file_dir+"/"+str(id))
# 列出所有文件
def list_dir(self,id,reverse=False,back=False,back_reverse=False): # false 正序
# 排序
# sort sorted
mylist = os.listdir(self.file_dir+"/"+str(id))
list = []
for i in mylist:
# print(i)
# 获取文件后缀
back = os.path.splitext(i)[-1]
list.append([i,back])
list.sort(reverse=reverse)
# 如果根据后缀做排序
if back:
list.sort(key=lambda i:i[1],reverse=back_reverse)
return list
# 修改
def list_update(self,id,filename,newfilename):
src = self.file_dir+'/'+str(id)+'/'+filename
dst = self.file_dir+'/'+str(id)+'/'+newfilename
try:
os.rename(src,dst)
except Exception as e:
# print(e)
print('系统找不到文件')
# myfile = MyFile()
# myfile.list_update(1,'img19.jpg','img19.png')
|