如何在WinHex中查找Bzip2压缩文件的压缩大小?
在WinHex中获取Bzip2文件的压缩相关大小
首先明确Bzip2的核心结构(从文件头42 5A 68开始):
- 3字节文件头:
42 5A 68 - 1字节块大小标识(如
31对应100KB块) - 4字节大端格式的原始数据CRC
- 4字节大端格式的原始未压缩文件大小(
FF FF FF FF表示未知) - 后续为压缩数据块,最后是结束标记、CRC校验和原始大小的重复
操作步骤
1. 定位关键字段
找到42 5A 68的起始偏移后,往后偏移8-11字节(即文件头起始位置+8到+11),这4个字节就是原始未压缩大小的大端存储值。
2. 转换字节为十进制大小
选中这4字节后,右键选择「编辑」→「复制」→「带格式复制」,再选择「十进制」即可直接获取转换后的原始文件大小数值。
3. 计算压缩数据的实际大小
如果需要纯压缩部分的大小:
- 先在WinHex底部查看文件总大小
- 减去文件头的12字节(3+1+4+4)
- 再减去结尾部分的14字节(6字节结束标记+4字节CRC+4字节原始大小)
- 最终结果就是压缩数据的大小
注意事项
- 若原始大小字段为
FF FF FF FF,说明压缩时未记录该信息,无法直接获取 - 确认选中的文件头是完整Bzip2文件的起始,而非嵌入在其他文件中的片段
内容的提问来源于stack exchange,提问作者Devlupur
相关产品推荐
相关产品推荐

