1

我正在尝试使用codecs.open(). 我已经想出了如何在内存中解压缩文件,但我不知道如何创建文件对象并使用codecs. 我尝试了不同的ZipFile属性,但没有运气。

所以,这里我是如何在内存中打开 zip 的:

import zipfile, io

f = 'somezipfile.zip'
memory_object = io.BytesIO(f.read()) 
zip_in_memory = zipfile.ZipFile(memory_object)
4

1 回答 1

2

您不需要codecs.open()访问内存中的数据——它用于从磁盘加载文件。extract()您可以使用其方法从您的 zipfile 对象中提取文件内容,并使用decode(). 如果您坚持使用该codecs模块,您还可以通过zip_in_memory.open(...)将返回的对象用codecs.EncodedFile.

于 2011-01-23T19:41:10.670 回答