有人知道一种有效的超压缩文件的方法吗?你可能见过一些电脑游戏被压缩成非常小的尺寸(比如 GTA San Andreas 被压缩成 1mb 文件!)。我尝试过许多高压缩程序,如 7zip、UHARC、KGB Archiver,但我无法在其他类型的文件(例如音乐专辑)上获得相同的结果。为什么有些文件不能压缩?我不明白为什么游戏可以缩小到其大小的 70%,但 60MB 的专辑或 5MB 的 PDF 在压缩后几乎是一样的。
答案1
并非所有文件都可以压缩。这取决于文件本身的二进制布局。大多数现代压缩形式都依赖于对数据的数学分析,试图使用概率规则来减少文件中的数据量,以便以后可以推断并重新膨胀。因此,他们会尝试几种不同的算法,并确定哪种算法能够使用数学来减少位数,同时保留重新创建原始数据所需的推断。
如果是音频和视频文件,它们已经作为编码的一部分被压缩了,并且其他压缩算法不太可能能够对它们进行更多的压缩。
PDF 还使用内部压缩这样它们就更加适合互联网并且能用最少的带宽下载。
即使不同类型的图像压缩也不同。通过压缩 .bmp 文件,你可以节省大量存储空间,但使用 jpeg 几乎不能节省存储空间,因为 jpeg 已经是数据压缩的(图像数据在写入二进制之前被压缩/最小化)和二进制压缩(对二进制数据进行数学运算),而位图只能通过抖动常见颜色来压缩其数据,因此通过对它们应用二进制压缩算法,你可以大大减小尺寸。
应用程序通常是可压缩的,因为它们是为了性能而不是减小尺寸而编码的,解压缩它们会对它们的执行产生负面影响,因此它们通常以未压缩的形式发送,因此可以缩小。