暂定为小于100KB的文件为异常文件,加入到list_abnormalfile中,弹对话框提示,且对话框中的路径不要冗长,要简洁,以当前拖入的目录为起始点。
用os.stat()生成stat_result对象,里面有一个属性方法st_size返回了文件的大小(字节为单位)。
python获取文件大小,文件大小低于100KB提示
abnormalfilesize = 102400 # 102400字节=100KB,小于该大小的文件,定为异常文件。
def dragEnterEvent(self, event):
....
list_abnormalfile = [] # 存储大小小于100KB的不正常pdf。
for f in file_path:
# 判断每个文件的大小,如果小于100KB,则判定为不正常。
# f = 'C:/Users/xcxc/Desktop/文件大小异常判断/A4.pdf'
stats = os.stat(f)
if stats.st_size < abnormalfilesize: # 102400
str_path = f[0: f.rfind('/')] # C:/Users/xcxc/Desktop/文件大小异常判断
str_path = str_path[0: str_path.rfind('/')] + "/" # C:/Users/xcxc/Desktop/
str_path = f.replace(str_path, "") # 将f中的前半部分路径替换为空。
list_abnormalfile.append(str_path)
# print(f"看我{str_path}") # 文件大小异常判断/A4.pdf
.....
# 如果文件大小异常列表list_abnormalfile不为空,弹窗提示异常文件。
if len(list_abnormalfile) > 0:
tips = "以下文件大小均小于" + str((abnormalfilesize / 1024)) + "KB,请检查。\n\n"
for i in list_abnormalfile:
tips += i + "\n"
select = QMessageBox.warning(self, "文件大小异常,小于" + str((abnormalfilesize / 1024)) + "KB", tips, QMessageBox.Yes | QMessageBox.No,
QMessageBox.Yes)