zip_dir_add |
ZIP : Ajout de répertoire |
---|---|
libzip |
Syntaxe
zip_int64_t zip_dir_add(zip_t *archive, const char *name, zip_flags_t flags); |
Paramètres
Nom | Description |
---|---|
archive | Ce paramètre permet d'indiquer un pointeur vers l'archive ZIP (zip_t*) dans laquelle vous souhaitez ajouter un répertoire. Cette archive doit avoir été ouverte au préalable (par exemple avec zip_open). |
name | Ce paramètre permet d'indiquer une chaîne de caractères (const char*) représentant le nom du répertoire à ajouter à l'archive. Ce nom est relatif à la racine de l'archive et doit se terminer par un caractère de barre oblique (/) pour indiquer qu'il s'agit d'un répertoire (par exemple, "dossier/nouveau_repertoire/"). |
flags | Ce paramètre permet d'indiquer un ensemble de flags (zip_flags_t) pouvant être utilisé pour spécifier des options supplémentaires lors de l'ajout du répertoire. Par exemple, vous pouvez spécifier si vous souhaitez que le répertoire soit ajouté de manière compressée ou non. Ces flags permettent de personnaliser l'ajout en fonction des besoins (bien que dans la plupart des cas, cette option soit rarement utilisée pour les répertoires). |
Valeurs de retour
Une fois l'opération terminée avec succès, l'index de la nouvelle entrée dans l'archive est renvoyé. Sinon, -1 est renvoyé et le code d'erreur dans l'archive est défini pour indiquer l'erreur.
Description
Cette fonction permet d'ajouter un répertoire vide à une archive ZIP.
Remarques
- La fonction zip_dir_add() ajoute un répertoire à une archive zip. Le paramètre archive spécifie l'archive zip à laquelle le répertoire doit être ajouté. name est le nom du répertoire dans l'archive zip.
- Cette fonction ajoute une entrée à l'archive. Elle ne vérifie pas si un répertoire portant ce nom existe dans le système de fichiers, ni n'ajoute son contenu si
c'est le cas. Le paramètre flags peut être l'un des éléments suivants :
Constante Description ZIP_FL_ENC_GUESS Deviner le codage du nom (par défaut). (Seuls CP-437 et UTF-8 sont reconnus.) ZIP_FL_ENC_UTF_8 Interpréter le nom comme UTF-8. ZIP_FL_ENC_CP437 Interpréter le nom comme page de code 437 (CP-437).
Erreurs
zip_dir_add() échoue si :
Constante | Description |
---|---|
ZIP_ER_EXISTS | Il existe déjà une entrée appelée nom dans l'archive. |
ZIP_ER_INVAL | L'archive ou le nom sont NULL ou des noms de fichiers codés en UTF-8 non valides. |
ZIP_ER_MEMORY | La mémoire requise n'a pas pu être allouée. |
Historique
zip_dir_add() a été ajouté dans libzip 0.11.
Voir également
libzip, zip_file_add.
Dernière mise à jour : Mercredi, le 5 Février 2025