C#字节数组问题

Sud*_*ha 6 c# string binary

我在博客上发现这个代码片段为 "将二进制数据转换为文本"

Byte[] arrByte = {0,0,0,1,0,1};

string x = Convert.ToBase64String(arrByte);
System: Console.WriteLine(x);
Run Code Online (Sandbox Code Playgroud)

这提供的输出AAAAAQAB ..

不清楚的是000101- 如何映射到 - AAAAAQAB并且我能够将它用作所有a-z字符作为二进制等价物以及如何?还是有其他方法吗?

Ric*_*ell 5

实际上00000000 00000000 00000000 00000001 00000000 00000001是映射到AAAAAQAB因为base64每个字母使用6位所以:

000000 = A (0)
000000 = A
000000 = A
000000 = A
000000 = A
010000 = Q  (16)
000000 = A
000001 = B  (1)
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅此Wikipedia文章.