gzip头部格式
ID1与ID2:各1字节。固定值,ID1 = 31 ( '\037' ,0x1F),ID2 = 139( '\213' ,0x8B),指示GZIP格式。注意两个加好表示一个字节(8位)gzip头的格式:+---+---+---+---+---+---+---+---+---+---+|ID1|ID2|CM |FLG| MTIME |XFL|OS | (more-->)+---+---+---+---+---+---+---+---+---+---+(if FLG.FEXTRA set)+---+---+=================================+| XLEN |...XLEN bytes of "extra field"...| (more-->)+---+---+=================================+(if FLG.FNAME set)+=========================================+|...original file name, zero-terminated...| (more-->)+=========================================+(if FLG.FCOMMENT set)+===================================+|...file comment, zero-terminated...| (more-->)+===================================+(if FLG.FHCRC set)+---+---+| CRC16 |+---+---++=======================+|...compressed blocks...| (more-->)+=======================+ 0 1 2 3 4 5 6 7+---+---+---+---+---+---+---+---+| CRC32 | ISIZE |+---+---+---+---+---+---+---+---+
0: store (copied)1: compress2: pack3: lzh4-7: 保留8: deflate
bit 0 FTEXT - 指示文本数据bit 1 FHCRC - 指示存在CRC16头校验字段bit 2 FEXTRA - 指示存在可选项字段bit 3 FNAME - 指示存在原文件名字段bit 4 FCOMMENT - 指示存在注释字段bit 5-7 保留
+-------+| CRC16 |+-------+
通常采用deflate格式的数据