Networking 如何对2字节序列进行Base64编码?

Networking 如何对2字节序列进行Base64编码?,networking,encoding,base64,decoding,Networking,Encoding,Base64,Decoding,我得到了一个2字节的序列,并被要求对其进行Base64编码: 00000001 0000001 据我所知,在使用Base64时,您只能对6位序列进行编码。 因为16位不能被6整除,所以我有点卡住了 我能看到的解决方案是将给定的2字节序列转换成3字节序列,这样它就可以被6整除。但是如何在不改变初始序列值的情况下实现这一点呢?基本上,用0填充到下一个6位的倍数,用=s填充最后的四个字符序列。由于最后两个零字节不构成完整的输入字节,解码器知道忽略它们。(并非完全需要填充=,但通常会使最终结果始终为4个

我得到了一个2字节的序列,并被要求对其进行Base64编码:

00000001 0000001

据我所知,在使用Base64时,您只能对6位序列进行编码。 因为16位不能被6整除,所以我有点卡住了


我能看到的解决方案是将给定的2字节序列转换成3字节序列,这样它就可以被6整除。但是如何在不改变初始序列值的情况下实现这一点呢?

基本上,用0填充到下一个6位的倍数,用
=
s填充最后的四个字符序列。由于最后两个零字节不构成完整的输入字节,解码器知道忽略它们。(并非完全需要填充
=
,但通常会使最终结果始终为4个字符的倍数。)

例如,您得到的序列是:

00000001 00010001
将其分成6组,我们得到:

000000 010001 0001
用零填充:

000000 010001 000100
转换为ASCII:

ARE
并指出:

ARE=

哦,太好了。知道了!谢谢:)对不起,我是个爱唠叨的人,但你不知道哈夫曼桌子吗?我想如果你有一个像你一样的逻辑思维,这可能是有道理的,我只是不能把我的头围绕着它再次感谢你们!