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.
Checking the stable version of the documentation...
ZIPPacker
Успадковує: RefCounted < Object
Дозволяє створювати ZIP-файли.
Опис
Цей клас реалізує записувач, який дозволяє зберігати кілька blob-файлів у ZIP-архіві. Дивіться також ZIPReader і PCKPacker.
# Створіть архів ZIP з одним файлом у корені.
func write_zip_file():
var writer = ZIPPacker.new()
var err = writer.open("user://archive.zip")
if error != ОК:
return error
writer.start_file("hello.txt")
writer.write_file("Hello World".to_utf8_buffer())
writer.close_file()
writer.close()
return ОК
Властивості
|
Методи
add_directory(path: String, permissions: BitField[UnixPermissionFlags] = 493, modified_time: int = 0) |
|
close() |
|
start_file(path: String, permissions: BitField[UnixPermissionFlags] = 420, modified_time: int = 0) |
|
write_file(data: PackedByteArray) |
Переліки
enum ZipAppend: 🔗
ZipAppend APPEND_CREATE = 0
Створіть новий zip-архів за вказаним шляхом.
ZipAppend APPEND_CREATEAFTER = 1
Закінчіть новий архів zip до кінця вже існуючого файлу на даній доріці.
ZipAppend APPEND_ADDINZIP = 2
Додайте нові файли до існуючого архіву zip на заданому шляху.
enum CompressionLevel: 🔗
CompressionLevel COMPRESSION_DEFAULT = -1
Запустіть файл зі стандартним рівнем стиснення Deflate (6). Це хороший компроміс між швидкістю та розміром файлу.
CompressionLevel COMPRESSION_NONE = 0
Створіть файл без стиснення. Це також відомий як режим стиснення «Збереження» і є найшвидшим методом пакування файлів у ZIP-архів. Рекомендується використовувати цей режим для файлів, які вже стиснуті (наприклад, файли JPEG, PNG, MP3 або Ogg Vorbis).
CompressionLevel COMPRESSION_FAST = 1
Розпочніть стиснення файлу з найшвидшим рівнем стиснення Deflate (1). Це швидко стискає файли, але призводить до більших розмірів, ніж COMPRESSION_DEFAULT. Швидкість розпакування зазвичай не залежить від вибраного рівня стиснення.
CompressionLevel COMPRESSION_BEST = 9
Розпочніть стиснення файлу з найкращим рівнем стиснення Deflate (9). Це повільно стискає файл, але призводить до менших розмірів файлів, ніж COMPRESSION_DEFAULT. Швидкість розпакування зазвичай не залежить від вибраного рівня стиснення.
Описи властивостей
Рівень стиснення, який використовується під час виклику методу start_file(). Використовуйте CompressionLevel як посилання.
Описи методів
Error add_directory(path: String, permissions: BitField[UnixPermissionFlags] = 493, modified_time: int = 0) 🔗
Додає каталог до архіву. Якщо для параметра modified_time встановлено значення 0, використовується поточний системний час.
Примітка: Каталоги створюються автоматично під час виклику функції start_file(); скористайтеся цією функцією перед додаванням файлів, щоб створити каталоги з власними правами доступу та часом модифікації.
Закриває базові ресурси, що використовуються цим екземпляром.
Зупиняє запис до файлу в архіві.
Не вдасться, якщо немає відкритого файлу.
Error open(path: String, append: ZipAppend = 0) 🔗
Відкриває zip-файл для запису за вказаним шляхом з використанням вказаного режиму запису.
Ця функція має бути викликана перед усіма іншими.
Error start_file(path: String, permissions: BitField[UnixPermissionFlags] = 420, modified_time: int = 0) 🔗
Починає запис у файл, що міститься в архіві. Одночасно можна записувати лише один файл. Якщо для параметра modified_time встановлено значення 0, використовується поточний системний час.
Повинен викликатися після методу open().
Error write_file(data: PackedByteArray) 🔗
Записує задані data у файл.
Має бути викликаний після start_file().