2010-07-27 2 views
5

Es gibt verschiedene Versionen des ZIP-Formats (http://en.wikipedia.org/wiki/ZIP_%28file_format%29#Version_history). Es ist unklar, welche Version Java unterstützt. In der Quelle für ZipOutputStream definiert es eine Konstante in Bezug auf die "minimale Version zu lesen" Teil der Kopfzeile, aber ich bin nicht 100% sicher, dass das der richtige Weg ist, eine Antwort auf meine Frage rückwärts zu konstruieren.Welche Version von ZIP wird von Java unterstützt (1.6 - oder irgendeine andere Version)

Kann jemand hier einen besseren Rat geben?

Danke.

+0

Warum verwenden Sie nicht die auf Ihrem System installierte ZIP-Datei 'Runtime.getRuntime(). Exec (Befehl);' where Befehl ist String zip -r ... – ant

+0

@ c0mrade Haben alle Windows-Systeme standardmäßig 'zip'? Schließlich soll Java tragbar sein. –

+0

Da ich direkt von einer Struktur im Speicher zippen - Outsourcing zu einer App außerhalb des Adressraums macht in meinem Szenario keinen Sinn (und nein, ich möchte nicht die Daten in eine temporäre Datei schreiben und ZIP von dort) . Danke trotzdem für den Vorschlag. – kvista

Antwort

3

Info-ZIP Application Note 970311

Die Kompressionsschemata in der Zusammenfassung java.util.zip Paket aufgeführt sind.

+2

Entschuldigung, ich hätte erwähnen sollen, dass ich das auch gesehen habe, aber leider, wenn Sie auf den Link für Info-Zip in der Paketübersicht klicken, erhalten Sie eine Anmeldung (!) was natürlich verhindert, dass man an die tatsächlichen Daten gelangt. Da Sie mich jedoch daran erinnert haben, entschied ich mich, tiefer zu graben und fand heraus, dass Sie das gleiche Dokument unter http://www.info-zip.org/doc/appnote-19970311-iz.zip erhalten können. Von dort kam ich zur README-ähnlichen Datei, die darauf hinweist, dass die Antwort 2,50 ist. Bitte lassen Sie mich wissen, wenn Sie etwas anderes ableiten, wenn Sie dies weiter verfolgen. Danke für die Erinnerung. – kvista