-
原始文件
(' ' * 20 + '\n') * 6
-
压缩后文件
' ' * 20 + '\n' 00000000: 1f8b 0808 4573 c160 0003 3132 332e 7478 ....Es.`..123.tx 00000010: 7400 5350 c004 5c00 8eba 3836 1500 0000 t.SP.....86....
(' ' * 20 + '\n') * 8 00000000: 1f8b 0808 6874 c160 0003 3132 332e 7478 ....ht.`..123.tx 00000010: 7400 5350 c004 5c58 c468 2308 006b 053f t.SP..\X.h#..k.? 00000020: 9e7e 0000 00 .~...
-
解析
-
头部分 1f8b gzip格式 08 压缩算法 deflate 08 FLG表示 都是08,代表 00001000 表示有名字, 所以我这里都有名字 bit 0: FTEXT bit 3: FNAME 4573 c160 修改时间 0x60c1 7345 = 1623290693 = 2021-06-10 10:04:53 0003 00代表 XFL压缩等级 03代表 Unix系统 3132 332e 7478 7400 文件名 12 3. tx t 以0结尾
-
内容 5350 c004 5c00
-
尾部分 CRC32 4字节 8eba 3836 ISIZE 4字节 1500 0000 21字节 因为用4字节,2**32来表示文件大小,所以当文件超过4G时,gzip的 ISIZE 4字节 7e00 0000 126字节
-