相关疑难解决方法(0)

为什么base64编码的数据压缩如此糟糕?

我最近压缩了一些文件,我注意到base64编码的数据似乎压缩得非常糟糕.这是一个例子:

  • 原始档案:429,7 MiB
  • 压缩通过xz -9:
    13,2 MiB / 429,7 MiB = 0,031 4,9 MiB/s 1:28
  • base64它并压缩通过xz -9:
    26,7 MiB / 580,4 MiB = 0,046 2,6 MiB/s 3:47
  • base64原始压缩的xz文件:
    17,8 MiB几乎没有时间=预期1.33x的大小增加

所以可以观察到的是:

  • xz压缩真的很好☺
  • base64编码的数据压缩不好,比未编码的压缩文件大2倍
  • base64-then-compresscompress-then-base64明显更差,更慢

怎么会这样?Base64是一种无损,可逆的算法,为什么它会如此影响压缩呢?(我也试过gzip,结果相似).

我知道base64然后压缩文件是没有意义的,但大多数时候一个人无法控制输入文件,我会想到,因为实际的信息密度(或任何它被称为base64编码文件的几乎与非编码版本相同,因此可以类似地压缩.

compression lossless-compression

45
推荐指数
2
解决办法
3万
查看次数

标签 统计

compression ×1

lossless-compression ×1