ZIPPacker

继承: RefCounted < Object

允许创建 ZIP 文件。

描述

该课程实现了允许将多个斑点存储在ZIP存档中的作者。 参见 ZIPReaderPCKPacker.

# 创建一个带有单个文件的ZIP存档。
func write_zip_file():
    var writer = ZIPPacker.new()
    var err = writer.open("user://archive.zip")
    if err != OK:
        return err
    writer.start_file("hello.txt")
    writer.write_file("Hello World".to_utf8_buffer())
    writer.close_file()

    writer.close()
    return OK

方法


枚举

enum ZipAppend: 🔗

ZipAppend APPEND_CREATE = 0

在给定的路径新建 Zip 归档文件。

ZipAppend APPEND_CREATEAFTER = 1

在位于给定路径的已有文件的末尾追加新的 Zip 归档文件。

ZipAppend APPEND_ADDINZIP = 2

在位于给定路径的已有 Zip 归档文件中添加新文件。


方法说明

Error close() 🔗

关闭该实例底层所使用的资源。


Error close_file() 🔗

停止写入存档中的文件。

如果没有打开文件,它将失败。


Error open(path: String, append: ZipAppend = 0) 🔗

使用指定的写入模式打开一个在给定路径上写作的ZIP文件。

这必须在其他一切之前调用。


Error start_file(path: String) 🔗

开始写入存档中的文件。 只能同时写一个文件。

必须在 open().


Error write_file(data: PackedByteArray) 🔗

写给定 data 到文件。

需要在:ref:start_file()<class_ZIPPacker_method_start_file>.