Dans mon projet, j'ai besoin de savoir à quoi ressemble un en-tête zlib
J'ai entendu dire que c'était plutôt simple, mais je ne trouve aucune description de l'en-tête zlib.
Par exemple, contient-il un nombre magique ?
Dans mon projet, j'ai besoin de savoir à quoi ressemble un en-tête zlib
J'ai entendu dire que c'était plutôt simple, mais je ne trouve aucune description de l'en-tête zlib.
Par exemple, contient-il un nombre magique ?
Voici le format de données compressées Zlib.
+---+---+
|CMF|FLG| (2 bytes - Defines the compression mode - More details below)
+---+---+
+---+---+---+---+
| DICTID | (4 bytes. Present only when FLG.FDICT is set.) - Mostly not set
+---+---+---+---+
+=====================+
|...compressed data...| (variable size of data)
+=====================+
+---+---+---+---+
| ADLER32 | (4 bytes of checksum)
+---+---+---+---+
Généralement, FLG.FDICT
(indicateur de dictionnaire) n'est pas défini. Dans de tels cas, le DICTID
n'est tout simplement pas présent. Ainsi, l'écoute totale n'est que de 2 octets.
Les valeurs d'en-tête ( CMF
et FLG
) sans dictionnaire sont définies comme suit.
CMF | FLG
0x78 | 0x01 - No Compression/low
0x78 | 0x9C - Default Compression
0x78 | 0xDA - Best Compression
Plus sur ZLIB RFC
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.