1
我正在使用AppEngine在我的應用中存儲一些pickled python對象。我想直接向用戶提供這些信息,並且我只是使用X-AppEngine-Blobkey
標題將文件以file.pickle.gz
文件名提供給用戶。但是,當我嘗試使用簡單的雙擊將我的計算機(Mac OS)提取這些文件時,這些文件將變成file.pickle.gz.cpgz
。Appengine提供gzip壓縮文件
我認爲這是我的瀏覽器是偷偷摸摸的,並提取它們,但我不這麼認爲,因爲
pickle.load('file.pickle.gz')
不行的,而且也不
pickle.load('file.pickle.gz.cpgz')
要存儲文件,我用:
blobfile = files.blobstore.create(mime_type='application/gzip')
with files.open(blobfile, 'a') as f:
gz = gzip.GzipFile(fileobj=f,mode='wb')
gz.write(my_pickled_object)
gz.close()
files.finalize(blobfile)
我想我不理解gzips的工作方式。有人可以解釋嗎?
你是對的,我的代碼工作。 「您是否嘗試關閉並再次打開?」。 – noio 2012-02-04 11:53:16