Gzip 解压与压缩工具
将 Base64 gzip 或十六进制 gzip 数据解压为可读文本,或将文本压缩为 Base64 gzip,并显示大小对比。全部在浏览器中完成——不上传任何数据。
输入大小
输出大小
压缩率
如何使用 Gzip 解码器
选择模式
选择压缩或解压模式。
输入数据
输入文本(压缩模式)或 Base64 编码的 Gzip 数据(解压模式)。
转换
点击转换按钮,查看结果和大小统计。
什么是 Gzip?
Gzip 是一种广泛使用的文件压缩格式和软件应用。它基于 DEFLATE 算法,结合 LZ77 和 Huffman 编码。在 Web 开发中,服务器常用 Gzip 压缩 HTTP 响应以减少传输数据量。
常见用途
Web 压缩
HTTP 响应的 Content-Encoding: gzip
文件压缩
Unix/Linux 系统中的 .gz 文件
API 数据
压缩 API 响应以减少带宽
为什么 Base64 和 Gzip 总是一起出现?
原始 gzip 数据是二进制的,无法存入只接受文本的场合。Base64 把压缩后的字节编码为安全的 ASCII 字符,因此"Base64 编码的 gzip"在现代系统中无处不在:
云服务错误响应
S3 等云服务会以 Base64/JSON 形式返回 gzip 压缩的错误内容
无服务与消息队列
Lambda 负载和 SQS/Kafka 消息先压缩再 Base64 编码以保持文本安全
HTTP 与 API 报文
大型 JSON 负载以 Content-Encoding: gzip 压缩,并以 Base64 存于文本字段
日志与 Webhook
压缩后的日志批次和 Webhook 负载以 Base64 字符串传输
本工具一步完成组合操作:粘贴 Base64 字符串,自动解码 Base64 并解压 gzip,还原可读文本。也支持十六进制编码的 gzip 字节(如 1f 8b 08)。
常见问题
Gzip 只压缩单个文件/数据流,ZIP 可以打包和压缩多个文件。Gzip 的压缩算法通常与 ZIP 相同。
请确保输入的是有效的 Base64 编码的 Gzip 数据。如果原始数据不是 Gzip 格式,解压会失败。
压缩率取决于数据内容。文本数据通常可压缩 60-80%,而已经压缩过的数据(如 JPEG)几乎无法再压缩。
选择解压模式并粘贴 Base64 字符串。工具先将 Base64 还原为二进制 gzip 字节,再用 DEFLATE 算法解压并显示可读文本,无需手动分两步操作。
三者都使用 DEFLATE 压缩算法,但封装方式不同。Zlib 在原始 deflate 流外加了小头部和校验和;Gzip 用文件格式封装 deflate,包含头部、时间戳和 CRC32 校验。HTTP Content-Encoding 的标准值是 "gzip"。
gzip file.txt 会压缩为 file.txt.gz 并删除原文件;加上 -k 可保留原文件。解压时使用 gunzip file.txt.gz 或 gzip -d。若要一次性处理多个文件,tar czf archive.tar.gz dir/ 可一步完成打包与压缩,tar xf 则用于解包。zcat 能直接流式输出 .gz 文件的内容而不写入任何文件——处理压缩日志时非常方便。
zlib 提供 1-9 共九个级别:1 最快但输出最大,9 压缩率最高但最慢,6 是默认值,接近文本压缩的最佳平衡点。级别 7-9 相比 6 通常只能多压缩个位数的百分比,耗时却明显更长。对于 Web 响应而言,CPU 时间往往比最后 5% 的体积缩减更重要。
非常重要。gzip(RFC 1952)是通用的后备方案——所有 HTTP 客户端、服务器和软件包格式都支持它;而 Brotli 借助内置字典,能在相近速度下将 Web 文本多压缩 15-20%;zstd 则在高压缩比下拥有更快的压缩与解压速度。HTTP 内容协商会自动选择双方共同支持的最优编码;.tar.gz 仍是跨平台归档的默认格式。