zip_file_extra_fields_count_by_id |
ZIP : Compteur de de champ de fichier par ID |
---|---|
libzip |
Syntaxe
zip_int16_t zip_file_extra_fields_count_by_id(zip_t *archive, zip_uint64_t index, zip_uint16_t extra_field_id, zip_flags_t flags); |
Retour
Une fois l'opération terminée avec succès, le nombre de champs supplémentaires demandé 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 de retourner le nombre de champs supplémentaires d'un fichier ZIP correspondant à un identifiant donné.
Remarques
- La fonction zip_file_extra_fields_count() compte les champs supplémentaires du fichier à la position index dans l'archive zip.
- Les indicateurs suivants sont pris en charge :
Constante | Description |
---|---|
ZIP_FL_CENTRAL | Compter les champs supplémentaires du répertoire central de l'archive. |
ZIP_FL_LOCAL | Compter les champs supplémentaires à partir des en-têtes de fichiers locaux. |
ZIP_FL_UNCHANGED | Comptez les champs supplémentaires d'origine inchangés, en ignorant les modifications apportées. |
La fonction zip_file_extra_fields_count_by_id() compte les champs supplémentaires avec l'ID (signature à deux octets) extra_field_id. Les autres arguments sont les mêmes que pour zip_file_extra_fields_count().
Les champs supplémentaires qui sont identiques dans le répertoire central et l'entête du fichier local sont fusionnés en un seul. Par conséquent, les comptages avec ZIP_FL_CENTRAL et ZIP_FL_LOCAL n'ont pas besoin d'atteindre la même valeur que lorsque ZIP_FL_CENTRAL|ZIP_FL_LOCAL sont donnés en même temps.
Erreurs
zip_file_extra_fields_count() et zip_file_extra_fields_count_by_id() échouent si :
Constante | Description |
---|---|
ZIP_ER_NOENT | index n'est pas un index de fichier valide dans l'archive. |
Historique
zip_file_extra_fields_count() et zip_file_extra_fields_count_by_id() ont été ajoutés dans libzip 0.11.
Voir également
libzip(), zip_file_extra_field_delete(), zip_file_extra_field_get(), zip_file_extra_field_set()