Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

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

方法

Error

close()

Error

close_file()

Error

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

Error

start_file(path: String)

Error

write_file(data: PackedByteArray)


枚举

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 写到文件中。

需要在 start_file() 之后调用。