Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
ZIP Create archive
|
ZIP Create archive ( archivoOCarpeta ; archivoDestino {; options} ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
archivoOCarpeta | Objeto |
![]() |
Objeto archivo o carpeta a comprimir | |||||
archivoDestino | Objeto |
![]() |
Archivo de destino del archivo | |||||
options | Entero largo |
![]() |
Si se utiliza archivoOCarpeta: ZIP en carpeta padre | |||||
Resultado | Objeto |
![]() |
Objeto status | |||||
El comando ZIP Create archive crea un objeto achivo ZIP comprimido y devuelve el estatus de la operación.
Puede pasar un objeto archivoOCarpeta o un objeto estructuraZip como primer parámetro.
Propiedad | Tipo | Descripción | ||||||||||||
compression | entero largo |
| ||||||||||||
encryption | entero largo | El cifrado a utilizar si se define una contraseña:
| ||||||||||||
password | texto | Una contraseña a utilizar si se requiere cifrado. | ||||||||||||
files | collection |
| ||||||||||||
callback | formula | Una fórmula de retrollamada que recibirá el progreso de compresión (0 - 100) en $1. |
En el parámetro archivoDestino, pase un objeto File que describa el archivo ZIP a crear (nombre, ubicación, etc.). Se recomienda utilizar la extensión ".zip" si desea que el archivo ZIP sea procesado automáticamente por cualquier software.
El parámetro opcional opciones le permite comprimir solo el contenido de archivoOCarpeta (es decir, excluir la carpeta adjunta): de forma predeterminada, cuando pasa un Folder en el parámetro archivoOCarpeta, ZIP Create archive comprimirá la carpeta y su contenido, para que la operación de descompresión vuelva a crear una carpeta. Si desea que la operación de descompresión comprima solo el contenido de la carpeta, pase la constante ZIP Without enclosing folder en el parámetro opciones.
Una vez que se crea un archivo, puede utilizar el ZIP Read archive para acceder a él (ver Propiedades).
El objeto de estado devuelto contiene las siguientes propiedades:
Propiedad | Tipo | Descripción |
statusText | texto | Mensaje de error (si lo hay):
|
status | entero largo | Código de estado |
success | booleano | True si el archivo es creado con éxito, de lo contrario false |
Para comprimir un File:
C_OBJECT($file;$destination;$status)
$destination:=Folder(fk desktop folder).file("MyDocs/file.zip")
$file:=Folder(fk desktop folder).file("MyDocs/text.txt")
$status:=ZIP Create archive($file;$destination)
Para comprimir un Folder sin la carpeta en sí:
C_OBJECT($folder;$destination;$status)
$destination:=Folder(fk desktop folder).file("MyDocs/Images.zip")
$folder:=Folder(fk desktop folder).folder("MyDocs/Images")
$status:=ZIP Create archive($folder;$destination;ZIP Without enclosing folder)
Para comprimir una estructura de archivo ZIP con una contraseña y barra de progreso:
C_OBJECT($zip;$status;$destination)
C_LONGINT(progID)
$destination:=Folder(fk desktop folder).file("MyDocs/Archive.zip")
$zip:=New object
$zip.files:=Folder(fk desktop folder).folder("MyDocs/Resources").folders()
$zip.password:="password"
$zip.callback:=Formula(myFormulaCompressingMethod($1))
progID:=Progress New //we use the 4D Progress component
$status:=ZIP Create archive($zip;$destination)
Progress QUIT(progID)
myFormulaCompressingMethod:
C_LONGINT($1)
Progress SET PROGRESS(progID;Num($1/100))
Desea pasar una colección de carpetas y archivos para comprimir al objeto zipStructure:
C_OBJECT($zip;$destination;$err)
$zip:=New object
$zip.files:=New collection
$zip.files.push(New object("source";Folder(fk desktop folder).file("Tests/text.txt")))
$zip.files.push(New object("source";Folder(fk desktop folder).file("Tests/text2.txt")))
$zip.files.push(New object("source";Folder(fk desktop folder).file("Images/image.png")))
$destination:=Folder(fk desktop folder).file("file.zip")
$err:=ZIP Create archive($zip;$destination)
Producto: 4D
Tema: Archivo y carpeta
Número
1640
Creado por: 4D v18
Manual de lenguaje 4D ( 4D v19.5)
Manual de lenguaje 4D ( 4D v19.6)
Manual de lenguaje 4D ( 4D v19.7)
Manual de lenguaje 4D ( 4D v19.8)