Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
ZIP Créer archive
|
ZIP Créer archive ( fichierOuDossier | structureZip ; fichierDestination {; options} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
fichierOuDossier | structureZip | Objet |
![]() |
Objet fichier ou dossier à compresser | |||||
fichierDestination | Objet |
![]() |
Fichier de destination de l'archive | |||||
options | Entier long |
![]() |
Si fichierOuDossier est utilisé : ZIP sans dossier parent | |||||
Résultat | Objet |
![]() |
Objet statut | |||||
La commande ZIP Créer archive crée un objet archive ZIP compressé et retourne le statut de l'opération.
Vous pouvez passer soit un objet fichierOuDossier ou structureZip en tant que premier paramètre.
Propriété | Type | Description | ||||||||||||
compression | entier |
| ||||||||||||
encryption | entier | Le chiffrement à utiliser si un mot de passe est défini :
| ||||||||||||
password | texte | Un mot de passe à utiliser si le chiffrement est requis. | ||||||||||||
files | collection |
| ||||||||||||
callback | formule | Un formule callback qui recevra la progression de la compression (0 - 100) dans $1. |
Dans le paramètre fichierDestination, passez un objet Fichier décrivant l'archive ZIP à créer (nom, emplacement, etc.). Il est conseillé d'utiliser l'extension ".zip" si vous souhaitez que l'archive ZIP soit traitée automatiquement par un logiciel.
Le paramètre optionnel options vous permet de compresser uniquement le contenu de fichierOuDossier (c'est-à-dire, exclure le dossier qui le contient) : par défaut, lorsque vous passez un Dossier dans le paramètre fichierOuDossier, ZIP Créer archive compressera le dossier et son contenu, de sorte que l'opération de décompression recrée un dossier. Si vous souhaitez que l'opération de décompression compresse uniquement le contenu du dossier, passez la constante ZIP Sans dossier parent dans le paramètre options.
Une fois que l'archive est créée, vous pouvez utiliser ZIP Lire archive pour y accéder (voir Propriétés).
L'objet statut retourné contient les propriétés suivantes :
Propriété | Type | Description |
statusText | texte | Message d'erreur (le cas échéant) :
|
status | entier long | Code du statut |
success | booléen | Vrai si l'archive est créée avec succès, sinon Faux. |
Pour compresser un Fichier:
C_OBJET($file;$destination;$status)
$destination:=Dossier(fk dossier bureau).file("MyDocs/file.zip")
$file:=Dossier(fk dossier bureau).file("MyDocs/text.txt")
$status:=ZIP Créer archive($file;$destination)
Pour compresser un Dossier sans le dossier lui-même :
C_OBJET($fiolder;$destination;$status)
$destination:=Dossier(fk dossier bureau).file("MyDocs/Images.zip")
$folder:=Dossier(fk dossier bureau).folder("MyDocs/Images")
$status:=ZIP Créer archive($folder;$destination;ZIP Sans dossier parent)
Pour compresser une structure d'archive ZIP à l'aide d'un mot de passe et d'une barre de progression :
C_OBJET($zip;$status;$destination)
C_ENTIER LONG(progID)
$destination:=Dossier(fk desktop folder).file("MyDocs/Archive.zip")
$zip:=Creer objet
$zip.files:=Dossier(fk desktop folder).folder("MyDocs/Resources").folders()
$zip.password:="password"
$zip.callback:=Formule(myFormulaCompressingMethod($1))
progID:=Progress New //nous utilisons le composant 4D Progress
$status:=ZIP Créer archive($zip;$destination)
Progress QUIT(progID)
myFormulaCompressingMethod :
C_ENTIER LONG($1)
Progress SET PROGRESS(progID;Num($1/100))
Vous souhaitez passer une collection de dossiers et de fichiers à compresser pour l'objet structureZip :
C_OBJET($zip;$destination;$err)
$zip:=Creer objet
$zip.files:=Creer collection
$zip.files.push(Creer objet("source";Dossier(fk dossier bureau).file("Tests/text.txt")))
$zip.files.push(Creer objet("source";Dossier(fk dossier bureau).file("Tests/text2.txt")))
$zip.files.push(Creer objet("source";Dossier(fk dossier bureau).file("Images/image.png")))
$destination:=Dossier(fk dossier bureau).file("file.zip")
$err:=ZIP Créer archive($zip;$destination)
Produit : 4D
Thème : Fichier et dossier
Numéro :
1640
Nom intl. : ZIP Create archive
Créé : 4D v18
4D - Langage ( 4D v19.5)
4D - Langage ( 4D v19.6)
4D - Langage ( 4D v19.7)
4D - Langage ( 4D v19.8)