我想学习如何高度压缩文件。我下载过压缩后大小为 4 GB 的文件,解压后大小为 10 GB。我需要使用哪种软件来实现如此高的压缩率?压缩会降低数据质量吗?如果您让我使用 WinRAR 或 7-Zip,请告诉我如何高度压缩文件,因为我曾尝试用它们压缩,但大小仅减少了几 MB。
答案1
压缩主要有两种类型:无损和有损。当您使用 WinRAR 和 7-Zip 等软件时,它们使用无损算法。当您使用软件翻录 DVD、编码音频/视频等时……它们通常使用有损算法。所以这取决于您处理的数据。如果是未知的二进制数据,您肯定会使用无损算法。如果是音频/视频,您将使用有损算法(除非您不想损失任何质量)。
就数据大小而言,有损压缩肯定比无损压缩更有效。
也就是说,在您的情况下,您需要无损压缩。我认为,如果是未知的二进制数据,使用 LZMA 算法可以获得最佳压缩率。据我所知,WinRAR 不支持这种压缩方式,但 7-Zip 通过使用 7z 容器支持。使用 7-Zip 创建存档时,请选择 7z 存档格式,然后选择 LZMA(或 LZMA2)压缩算法,然后您就可以在一些预设之间进行选择,从压缩率较差但使用较少资源的快速压缩到压缩率最好但使用较多资源的缓慢压缩。
答案2
文件的压缩程度很大程度上取决于文件的类型。一般来说,文本文件可以高度压缩(甚至 90% 或更多),而某些文件格式(如图像)在现有形式下已经高度压缩,将它们添加到压缩档案中几乎不会进一步减小其大小。
话虽如此,像 7-Zip 这样的应用程序通常都有设置,您可以在其中选择压缩级别。以 7-Zip 为例,当您创建存档时,您可以从六种不同的压缩级别中进行选择,从存储(无压缩)到超级(最小文件大小)。更高的压缩率需要更多时间来处理,因此如果您很着急或保存每个字节并不重要,那么选择正常之类的压缩率将为您提供可接受的结果。由于您的问题是如何获得最大的压缩率,因此您可能更乐意选择超级。但同样,有些文件可以比其他文件压缩得多,即使在尝试压缩图像文件时选择超级,也可能不会为您节省超过几个字节的空间(如果是这样的话)(取决于各种因素,包括原始文件大小)。
答案3
大小仅减少了几MB。
听起来数据已经压缩了。压缩已经压缩的数据只能节省很少的空间。
请告诉我如何高度压缩文件,因为我已经尝试使用它进行压缩。
使用 7-zip 或 winrar 应该没问题。使用 Winrar 或 7-zip 压缩时,您可以选择使用更好的压缩,但代价是需要更长的时间。
压缩会降低数据质量吗
如果使用无损压缩(例如 7-zip/winrar),则不会。MP3 或 jpeg 等压缩算法在压缩时确实会降低质量。
答案4
现在有一种神奇的方法可以将 10 GB 变成 4 GB。如果你有一个 10 GB 的文件,其中包含 10,000,000,000 个重复的字母A,可以压缩成几百字节。如果是10GB的随机数据,根本就没法压缩。