关于 base64 编码/解码中的空格

关于 base64 编码/解码中的空格

众所周知,在使用 base64 编码方法进行编码时会跳过空格,但问题是解码时如何将它们添加回来......??

考虑以下编码和解码

要解码的字符串:

TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCAuLi4=

解码后的字符串:

Man is distinguished, not only by his reason, but ...

答案1

您误解了 base64 的前提。

Base64 用于将二进制 blob 编码为可打印的 ascii 文本,其实现方式是每次获取 6 位数据并将其映射到 64 个字符之一A-Za-z0-9+/。所有内容都包含在 blob 中。

尽管解码它查看每个字符并将其映射回去,任何空格都会被忽略(读取:跳过)。

相关内容