3.4 Archive ändern

Sie können Zip-Archive auch ändern, indem Sie einfach Befehle aus der Dateisystembibliothek (DOS) von Hollywood verwenden. Um beispielsweise die Datei test.jpg aus dem ZIP-Archiv test.zip zu löschen, können Sie einfach wie folgt vorgehen:

 
DeleteFile("test.zip/test.jpg", {Adapter = "zip"})

Beachten Sie, dass es zwingend erforderlich ist, den Tag Adapter an DeleteFile() zu übergeben, da zip.hwp keinen Dateisystemadapter installiert, selbst wenn der Tag InstallAdapter auf True gesetzt ist (siehe oben). Auf den Dateisystemadapter von Zip.hwp kann nur zugegriffen werden, indem er direkt an einen Hollywood-Befehl im Tag Adapter übergeben wird.

Es ist auch möglich, Dateien in Zip-Archiven mit dem Befehl Rename() von Hollywood umzubenennen. Das kann man so machen:

 
Rename("test.zip/oldname.txt", "newname.txt", {Adapter = "zip"})

Wie oben müssen Sie den Tag Adapter an Rename() übergeben, damit dies funktioniert.

Auf diese Weise können Sie Verzeichnisse in Zip-Archiven erstellen:

 
MakeDirectory("test.zip/a_new_dir", {Adapter = "zip"})

Vergessen Sie nicht, auch hier "zip" im Tag Adapter zu übergeben.

Auf diese Weise können neue Dateien in Zip-Archiven erstellt werden:

 
OpenFile(1, "test.zip/new_file", #MODE_WRITE)
WriteLine("Hello World!")
CloseFile(1)

Oder noch kürzer:

 
StringToFile("Hello World!", "test.zip/new_file")

Sie können Benutzer-Tags auch verwenden, um ein Passwort und eine Verschlüsselungsstufe anzugeben:

 
StringToFile("Hello World!", "test.zip/new_file", {UserTags =
      {Password = "123456", Encryption = #ZIP_EM_AES_128}})

Beachten Sie, dass beim Schreiben von Dateien in ZIP-Archive vorhandene Dateien im ZIP-Archiv nicht gelöscht werden, sondern die neuen Dateien an das ZIP-Archiv angehängt werden. Beachten Sie jedoch, dass wenn die Datei, die in ein Zip-Archiv geschrieben werden soll, vorhanden ist, diese automatisch überschrieben wird. Seien Sie also vorsichtig.

Mit CopyFile() ist es sogar möglich, Dateien in Zip-Archive zu kopieren. Sie könnten zum Beispiel auch so etwas tun:

 
CopyFile("testfile", "test.zip", {Adapter = "zip"})

Der obige Code speichert die Datei testfile im ZIP-Archiv test.zip.

Schließlich können Sie die Attribute von Dateien in ZIP-Archiven mit dem Befehl SetFileAttributes() von Hollywood ändern oder Dateien mit dem Befehl MoveFile() von Hollywood in ZIP-Archive hinein und aus diesen verschieben. Übergeben Sie einfach den Namen der Datei, die Sie ändern möchten, sowie "zip" im Tag Adapter und es wird funktionieren. Es ist wirklich praktisch und leistungsstark!


Navigation zeigen