当文件上传时,表示它的标准方式是cgi.FieldStorage
(至少金字塔是这样做的)。但是,如果我想以有效的方式知道长度,我该如何获得它?例如:
uploaded = cgi.FieldStorage()
如果此变量现在来自请求,如何确定文件的大小?
答案 0 :(得分:6)
效率最低的方式是:
size = len(uploaded.value)
更好:
uploaded.file.seek(0, 2)
size = uploaded.file.tell()
uploaded.file.seek(0)
最佳:
import os
size = os.fstat(uploaded.file.fileno()).st_size
最后一个选项是测量C和Python中文件的首选方法。它返回a structure,它可以告诉你各种各样的东西,甚至是文件的大小。