zip_file_get_comment |
ZIP : Demande le commentaire de fichier |
|---|---|
| libzip | |
Syntaxe
| const char * zip_file_get_comment(zip_t *archive, zip_uint64_t index, zip_uint32_t *lenp, zip_flags_t flags); |
Retour
En cas de réussite, un pointeur vers le commentaire est renvoyé, ou NULL s'il n'y a pas de commentaire. En cas d'erreur, NULL est renvoyé et le code d'erreur dans l'archive est défini pour indiquer l'erreur.
Description
Cette fonction permet de récupérer le commentaire associé à un fichier dans une archive ZIP.
Remarques
- La fonction zip_file_get_comment() renvoie le commentaire du fichier à la position index dans l'archive zip. Le nom est encodé en UTF-8 sauf si ZIP_FL_ENC_RAW a été spécifié (voir ci-dessous). Ce pointeur ne doit pas être modifié ou libéré free() et devient invalide lorsque l'archive est fermée. Si lenp n'est pas NULL, l'entier vers lequel il pointe sera défini sur la longueur du commentaire. Si flags est défini sur ZIP_FL_UNCHANGED, le commentaire d'origine inchangé est renvoyé.
- ASCII est un sous-ensemble de CP-437 et UTF-8.
De plus, les indicateurs suivants sont pris en charge :
| Constante | Description |
|---|---|
| ZIP_FL_ENC_RAW | Renvoie le commentaire non modifié tel qu'il est dans l'archive ZIP. |
| ZIP_FL_ENC_GUESS | (Par défaut.) Détermine l'encodage du commentaire dans l'archive ZIP et convertissez-le en UTF-8, si nécessaire. (Seuls CP-437 et UTF-8 sont reconnus.) |
| ZIP_FL_ENC_STRICT | Suivez la spécification ZIP pour les noms de fichiers et étendez-la aux commentaires de fichiers, en vous attendant à ce qu'ils soient codés en CP-437 dans l'archive ZIP (sauf s'il s'agit d'un commentaire UTF-8 du champ supplémentaire spécial). Convertissez-le en UTF-8. |
Erreurs
zip_file_get_comment() échoue si :
| Constante | Description |
|---|---|
| ZIP_ER_INVAL | index n'est pas un index de fichier valide dans l'archive. |
Historique
zip_file_get_comment() a été ajouté dans libzip 0.11.
Voir également
libzip(), zip_file_set_comment(), zip_get_archive_comment()
Dernière mise à jour : Mercredi, le 5 Février 2025