小编典典

Base64长度计算?

all

阅读 base64 wiki后…

我试图弄清楚公式是 如何工作的:

给定一个长度为 的字符串n,base64 长度将为在此处输入图像描述

这是:4*Math.Ceiling(((double)s.Length/3)))

我已经知道 base64 长度必须是%4==0让解码器知道原始文本长度是多少。

序列的最大填充数可以是===

wiki :每个输入字节的输出字节数约为 4 / 3(33% 开销)

问题:

上面的信息如何 与输出长度一致 在此处输入图像描述


阅读 86

收藏
2022-07-14

共1个答案

小编典典

每个字符用于表示 6 位 ( log2(64) = 6)。

因此使用 4 个字符来表示4 * 6 = 24 bits = 3 bytes.

所以你需要4*(n/3)chars 来表示n字节,这需要四舍五入到 4 的倍数。

四舍五入到 4 的倍数后未使用的填充字符数显然是 0、1、2 或 3。

2022-07-14