1. ホーム
  2. string

[解決済み] Base64の長さ計算?

2022-04-16 01:56:12

質問

base64を読み込んだ後 ウィキ ...

を考えているんです。 どのように 式が動作している。

の長さを持つ文字列が与えられると n の場合、Base64の長さは <イグ

これは、: 4*Math.Ceiling(((double)s.Length/3)))

私はすでに、base64の長さが %4==0 デコーダが元のテキストの長さを知ることができるようにするためです。

パディングの最大数は以下の通りです。 = または == .

wiki :入力バイトあたりの出力バイト数は約4 / 3 (33%)です。 オーバーヘッド)

質問です。

どのように は、上記の情報と出力長を解決する ?

解決方法は?

1文字で6ビットを表現する( log2(64) = 6 ).

したがって、4文字で 4 * 6 = 24 bits = 3 bytes .

ということで、必要なのは 4*(n/3) を表現するための文字 n バイトで、これは4の倍数に切り上げられる必要があります。

4の倍数に切り上げた結果、未使用のパディング文字数は、当然ながら0、1、2、3のいずれかになります。