Empaquetar archivos con ZIP (file.zip)
Declaración
éxito_de_la_operación, mensaje_de_error = file.zip(ruta_del_zip, lista_de_archivos [, contraseña])
Parámetros
- ruta del zip
Tipo texto, ruta donde se guardará el archivo zip que se creará - lista de archivos
Tipo tabla | Tipo texto- Si es una tabla: cada elemento es una tabla de dos elementos
{ ruta_del_archivo_de_origen, ruta_de_archivo }; “ruta de archivo” es la ruta relativa dentro del zip - Si es una cadena: representa una ruta de directorio y el contenido de ese directorio se empaqueta en el zip
- Si es una tabla: cada elemento es una tabla de dos elementos
- contraseña
Tipo texto, parámetro opcional; si se proporciona, crea un zip cifrado
Valores devueltos
- éxito de la operación
Tipo booleano; devuelve true si la operación tiene éxito y false si falla - mensaje de error
Tipo texto, mensaje de error cuando la operación falla
Descripción
Comprime archivos o directorios en un archivo zip
Cuandolista de archivoses una tabla, permite controlar con precisión la ruta relativa de cada entrada dentro del zip; cuando es una cadena, empaqueta todo el contenido del directorio
Esta función solo está disponible a partir de la versión 20250914
Ejemplo
Especificar con precisión la ruta de archivo mediante una «tabla»
local ok, err = file.zip(XXT_SCRIPTS_PATH.."/out.zip", {
{ XXT_SCRIPTS_PATH.."/data/readme.txt", "docs/readme.txt" },
{ XXT_SCRIPTS_PATH.."/assets/logo.png", "assets/images/logo.png" },
}, "123456")
if not ok then
sys.alert("打包失败:"..err)
else
sys.alert("打包成功:"..XXT_SCRIPTS_PATH.."/out.zip")
end
Empaquetar directamente un directorio
local ok, err = file.zip(XXT_SCRIPTS_PATH.."/project.zip", XXT_SCRIPTS_PATH.."/project")
if not ok then
sys.alert("打包失败:"..err)
else
sys.alert("打包成功:"..XXT_SCRIPTS_PATH.."/project.zip")
end
Nota: el código anterior usa la función sys.alert, que no pertenece a este capítulo.