[Python-es] zipfile Buffered
Juan de Dios Manjón Pérez
juande en jdmanjon.net
Sab Ene 22 11:45:28 CET 2011
Mi objetivo es manipular ficheros zip sin tener que extraer a un temp y
sin tener que leer todo de golpe con readstring = zin.read(|item.filename)|
Y el motivo es claro: quiero trabajar con ficheros zip con entradas de
gran tamaño.
Se me fué la indentación en el for:
BUFFER_SIZE = io.DEFAULT_BUFFER_SIZE¶
zin =zipfile.ZipFile('archive.zip','r')
|zout =zipfile.ZipFile('archve_new.zip','w')
foritem inzin.infolist():
reader =zin.BufferedReader(item.filename,| BUFFER_SIZE|)
writer = zout.BufferedWriter(||item.filename|, BUFFER_SIZE)
chuck = reader.read(BUFFER_SIZE)
while chuck:
writer.write(chuck)
chuck = reader.read(BUFFER_SIZE)
reader.close()
writer.close()
zin.close()
zout.close()
A ver si alguien tiene información de como implementarlo......
Saludos
Juande
El 21/01/2011 14:10, Juan de Dios Manjón Pérez escribió:
>
> BUFFER_SIZE = io.DEFAULT_BUFFER_SIZE¶
>
> zin =zipfile.ZipFile('archive.zip','r')
>
> |zout =zipfile.ZipFile('archve_new.zip','w')
>
> foritem inzin.infolist():
> reader =zin.BufferedReader(item.filename,| BUFFER_SIZE|)
> writer = zout.BufferedWriter(||item.filename|, BUFFER_SIZE)
>
> chuck = reader.read(BUFFER_SIZE)
> while chuck:
> writer.write(chuck)
> chuck = reader.read(BUFFER_SIZE)
>
> reader.close()
> writer.close()
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20110122/3ff344a9/attachment.html>
Más información sobre la lista de distribución Python-es