2016-01-27 5 views
11

Als Titel entpacken, erstellt ich die Zip-Datei von meinem Django Backend-Server (auf einer Ubuntu 14.04.1 LTS gehostet), um den Python zipfile Modul:kann nicht eine großen Zip-Datei (3.3GB) in iOS9 mit SSZipArchive

zipfile.ZipFile(dest_path, mode='w', compression=zipfile.ZIP_DEFLATED, 
       allowZip64=True) 

Ich habe es mit meinem Mac im Finder geöffnet, aber keinen Erfolg mit der SSZipArchive Bibliothek. Ich habe versucht, das späteste Festschreiben des Hauptzweigs zu verwenden und v1.0.1 und v0.4.0 auch zu markieren.

v0.4.0 verwenden, bekam ich Fehler in Zeile 1506 von unzip.c:

if (unz64local_CheckCurrentFileCoherencyHeader(s, 
                &iSizeVar, 
                &offset_local_extrafield,&size_local_extrafield)!=UNZ_OK) 
     return UNZ_BADZIPFILE; 

und es stucked auf der gleichen Datei mit dem gleichen currentFileNumber jedes Mal bei unzipping.

Bekommt jemand Hinweise?

P.S. Ich denke, SSZipArchive sollte Zip64-Archivdatei unterstützen, da ich eine question auf ihrem GitHub Repo gefragt habe.

Updates [20160129] mir eine zipinfo Überprüfung der Zip-Datei und haben die folgende Ausgabe ausgeführt:

... 
-rw-r--r-- 2.0 unx  1992 b- defN 26-Nov-15 14:59 <file_name> 
-rw-r--r-- 2.0 unx  925 b- defN 26-Nov-15 14:59 <file_name> 
-rw-r--r-- 2.0 unx  1194 b- defN 26-Nov-15 14:59 <file_name> 
-rw-r--r-- 2.0 unx  72 b- defN 26-Nov-15 14:52 <file_name> 
-rw-r--r-- 2.0 unx  289 b- defN 18-Jan-16 11:27 <file_name> 
-rw-r--r-- 2.0 unx  1541 b- defN 18-Jan-16 11:27 <file_name> 
-rw-r--r-- 2.0 unx  295 b- defN 18-Jan-16 11:27 <file_name> 
-rw-r--r-- 2.0 unx 449619181 b- defN 18-Jan-16 11:26 <file_name> 
-rw-r--r-- 4.5 unx 73128184 bx defN 18-Jan-16 11:26 <file_name> 
-rw-r--r-- 4.5 unx 69444488 bx defN 18-Jan-16 11:26 <file_name> 
-rw-r--r-- 4.5 unx 671440 bx defN 18-Jan-16 11:26 <file_name> 
-rw-r--r-- 4.5 unx 20189549 bx defN 18-Jan-16 11:27 <file_name> 
-rw-r--r-- 4.5 unx  197 bx defN 18-Jan-16 11:26 <file_name> 
-rw-r--r-- 4.5 unx 1379396 bx defN 18-Jan-16 11:26 <file_name> 
... 
+1

Es sieht aus wie die Größe der Datei in dem Header des ZIP-Archivs misreported wird. Es gibt ein paar andere Tools, die auf Minizip basieren, die dieses Verhalten speziell bei JSON-Dateien gemeldet haben, obwohl sie ziemlich alt aussehen. Kennen Sie den Dateityp, der das Problem verursacht hat, und können Sie ihn mit einem anderen Zip-Tool entfernen, um das Verhalten einzuschränken? –

+0

Ich finde die Datei, die das Problem verursacht, ist große mp4 Videodatei. Aber ich habe keine Ahnung, ob dieses große mp4-Video der Schuldige ist. Sie sehen die 2.0-Zeile mit der Größe 449619181 oben ist die große mp4-Datei. –

+0

hast du zufällig einen Dateikommentar auf dem MP4? http://stackoverflow.com/questions/20250022/why-minizip-doesnt-archive-large-file-larger-4-gb –

Antwort

0

Nach einem Dutzend von Versuch und Irrtum, fand ich es ein Problem mit dem Reißverschluss ist Datei, die vom Python-ZIP-Dateipaket generiert wird. Wenn ich verwende, um den Zip-Befehl von dem Ubuntu-Server-Version zur Verfügung gestellt

Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' für die Software-Lizenz.

Dies ist Zip 3.0 (5. Juli 2008), nach Info-ZIP.

um große Datenmengen von 4 GB zu archivieren, kann SSZipArchive das Zip-Paket erfolgreich extrahieren.

Getestet habe ich die Zip-Datei mit zipinfo und gefunden:

... 
-rw-r--r-- 3.0 unx  2939 bx  2677 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx 15069 bx  3040 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  3265 bx  3003 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  3048 bx  2766 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  3453 bx  3168 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  1415 tx  534 defN 16-Jan-28 16:33 <file_name> 
drwxr-xr-x 3.0 unx  0 bx  0 stor 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  3302 tx  695 defN 16-Jan-28 16:33 <file_name> 
drwxr-xr-x 3.0 unx  0 bx  0 stor 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx 130678 bx 127322 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx 133540 bx 130045 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  136 tx  71 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  1416 tx  541 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  1417 tx  541 defN 16-Jan-28 16:33 <file_name> 
-rw-r--r-- 3.0 unx  2766 tx  652 defN 16-Jan-28 16:33 <file_name> 
5551 files, 3854751563 bytes uncompressed, 3793408959 bytes compressed: 1.6%