2015-04-23 11 views
8

Ho uno script che comprime i file di output. Il problema è che uno dei file è su 4Gigs. Come posso convertire il mio script in modo che utilizzi le estensioni ZIP64 invece dello zip standard?Python con estensioni ZIP64 durante la compressione di file di grandi dimensioni

Ecco come Attualmente sto zippare:

try: 
    import zlib 
    compression = zipfile.ZIP_DEFLATED 
except: 
    compression = zipfile.ZIP_STORED 

modes = { zipfile.ZIP_DEFLATED: 'deflated', 
      zipfile.ZIP_STORED: 'stored', 
      } 

compressed_name = 'edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.zip' 
print 'creating archive' 
zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.zip', mode='w') 
try: 
    zf.write(name1, compress_type=compression) 
    zf.write(name2, compress_type=compression) 
    zf.write(name3, compress_type=compression) 
finally: 
    print 'closing' 
    zf.close() 

Grazie! Bill

risposta

5

Ti piace questa:

zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.zip', mode='w', allowZip64=True) 
12

Partenza zipfile-objects.

Si può fare questo:

zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.zip', mode='w', allowZip64 = True) 
Problemi correlati