可以将数据添加到文件中以获得更好的压缩吗?

时间:2014-07-27 20:12:58

标签: zip compression

如果我正确理解ZIP压缩的基本思想(我认为压缩一般),压缩文件只是在原始数据中找到的模式,用较短的表示法表示。是否有压缩算法将垃圾/不重要的数据插入文件以添加模式,而曾经没有?这是违反某些文件完整性规则,还是只是收益递减?

大多数情况下,我一直在考虑将空白添加到不关心它的内容中,就像HTML文件一样。

编辑:一个更具体的例子可能会更好:

.class-a {
    display: block;
    color: #fff;
}
.class-b {display:block;color:#fff;}

显然缩小(和重用类)将是最好的做法,但这是一个算法如何做事情而不是人类的问题。添加任意数量的空格以使后一行符合前者提供任何用途吗?

EDITEDIT:这听起来像是一些奇怪的有损压缩模仿,现在我想起来了。 Gainy压缩或一些废话。

1 个答案:

答案 0 :(得分:0)

不,原则上向文件中添加更多信息也会增加必须包含在压缩文件中的信息量,因此压缩文件会更大。

如果文件中有字符串AAA,并且添加了该模式的重复,则压缩文件必须包含AAA plus 的表示,以表示该模式是别处重复。记录重复模式的位置也会占用空间。

使用HTML示例查看它的另一种方法是,如果添加大量空白,那么可能会很好地压缩,因此压缩文件的最终大小最多保持不变。因此“压缩比”会更高,但在未压缩文件中也不会有更多有趣的内容,因此压缩的绝对改善最多为零。