Wenn wir Dateien austauschen, komprimieren wir sie immer, bevor wir sie versenden. Seit 4D v18 gibt es zwei Befehle, mit denen Sie ein ZIP-Archiv mit dem Standard-Zip-Kompressionsalgorithmus erstellen und lesen können.
Mit 4D V19 R3 unterstützt der Zip Create Archive Befehl einen neuen Kompressionsalgorithmus: LZMA. Der Vorteil dieses Algorithmus ist, dass er kleinere Archive erzeugt als der Standard-Zip-Kompressionsalgorithmus. Finden wir mehr heraus!
Was ist LZMA?
LZMA ist die Abkürzung für Lempel-Ziv-Markov-Ketten-Algorithmus. LMZA ist ein verlustfreier Komprimierungsalgorithmus, der von Igor Pavlov entwickelt wurde. Dieser Datenkomprimierungsalgorithmus verwendet ein Wörterbuchkomprimierungsschema, das dem von Abraham Lempel und Jacob Ziv veröffentlichten LZ77-Algorithmus ähnelt.
Wie wird er verwendet?
Sie können ein„zipArchive„-Objekt an den ZIP Create Archive Befehl übergeben, um Ihr zip anzupassen. Damit können Sie den Kompressionsalgorithmus, den Verschlüsselungsalgorithmus und einige andere Optionen auswählen. Lesen Sie die Dokumentation für weitere Details.
Für den Komprimierungsalgorithmus können Sie das Attribut „Komprimierung“ auf setzen:
- ZIP-Komprimierung Keine
- ZIP-Komprimierung Standard
- ZIP-Komprimierung LZMA
- ZIP-Komprimierung XZ
Für den Komprimierungsgrad können Sie das Attribut „level“ zwischen 1 und 10 einstellen.
Hier ist ein Beispiel, das einen Ordner mit dem LZMA-Algorithmus komprimiert:
var $zip; $status: Object
var $destination : 4D.File
$zip :=New object
$zip .files:=Neue Sammlung
$zip .files.push(Folder(fk documents folder).folder("Archive 2020"))
$zip .compression:=ZIP Compression LZMA
$zip.
level:=4
$destination :=Folder(fk desktop folder).file("Archive2020.zip")
$status :=ZIP Create archive($zip; $destination)
Hier ist das Ergebnis für ein Archiv von fast 2 GB mit 1800 Bildern:
Zurück zu Ihnen! Zögern Sie nicht, Ihr Feedback und Ihre Eindrücke im Forum zu teilen.