[英]IO error: not a gzipped file in python
我正在為RPG游戲編程,因此我具有功能load_map
和XML映射,我必須對該層進行解碼和解壓縮。 這是代碼:
# Decodifica una cadena en base64 y luego la descomprime.
def decode(cadena):
# Decodificar.
cadena = base64.decodestring(cadena)
# Descomprimir.
copmressed_stream = StringIO.StringIO(cadena)
gzipper = gzip.GzipFile(fileobj=copmressed_stream)
cadena = gzipper.read()
# Convertir.
salida = []
for idx in xrange(0, len(cadena), 4):
val = ord(str(cadena[idx])) | (ord(str(cadena[idx + 1])) << 8) | \
(ord(str(cadena[idx + 2])) << 16) | (ord(str(cadena[idx + 3])) << 24)
salida.append(val)
return salida
錯誤在cadena=gzipper.read()
。 為什么會出現此錯誤,該如何解決?
添加異常捕獲,例如try ... except ...會很好。 您可以通過shell命令icktoofay確保測試文件類型為gzip。 通常,命令“文件test.gzip”將起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.