在python中从SpooledTemporaryFile检索文件名

时间:2019-07-08 05:56:23

标签: python

我正在这样的字段中接收二进制数据

<FileStorage: u'SampleDoc.docx' ('application/vnd.openxmlformats-officedocument.wordprocessingml.document')>

我需要检索文件名并将其存储在另一个变量中。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

如文档(https://docs.python.org/3/library/tempfile.html)中所述。 SpooledTemporaryFile可能根本不会在HDD上创建文件。您写入返回的类似文件的对象的数据可能只是保存在内存中。 因此,您可能会对NamedTemporaryFile感兴趣,因此您可以执行以下操作:

with NamedTemporaryFile() as fileout:
    ...
    filename = fileout.name

请注意,如果您需要访问它并使用上下文管理器,则必须将文件读取代码放在上下文中,因为该文件将不在其外部。