更多操作
创建页面,内容为“ = base 64 = == 基本介绍 == base 64是一种基于64个可打印字符来表示二进制数据的方法,是8Bit字节代码的编码方式之一,可用于在HTTP环境下传递较长的标识信息 == 编码规则 == Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3x8=4x6=24),然后把6Bit再添两位高位0,组成四个8Bit的字节,并按照base64转换表转换成字符串。当要编码的字节数不能被3整除时,如…” |
无编辑摘要 |
||
第8行: | 第8行: | ||
Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3x8=4x6=24),然后把6Bit再添两位高位0,组成四个8Bit的字节,并按照base64转换表转换成字符串。当要编码的字节数不能被3整除时,如多出2个字节,这时可以使用以下方法进行处理:先使用0字节值在末尾补足,使其能够被3整除,然后再进行Base64的编码。在编码后的Base64文本后加上一个或两个“=”号,代表补足的字节数 | Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3x8=4x6=24),然后把6Bit再添两位高位0,组成四个8Bit的字节,并按照base64转换表转换成字符串。当要编码的字节数不能被3整除时,如多出2个字节,这时可以使用以下方法进行处理:先使用0字节值在末尾补足,使其能够被3整除,然后再进行Base64的编码。在编码后的Base64文本后加上一个或两个“=”号,代表补足的字节数 | ||
{| class="wikitable" | {| class="wikitable" | ||
!十进制 | !十进制 | ||
!二进制 | !二进制 |
2025年3月4日 (二) 12:57的版本
base 64
基本介绍
base 64是一种基于64个可打印字符来表示二进制数据的方法,是8Bit字节代码的编码方式之一,可用于在HTTP环境下传递较长的标识信息
编码规则
Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3x8=4x6=24),然后把6Bit再添两位高位0,组成四个8Bit的字节,并按照base64转换表转换成字符串。当要编码的字节数不能被3整除时,如多出2个字节,这时可以使用以下方法进行处理:先使用0字节值在末尾补足,使其能够被3整除,然后再进行Base64的编码。在编码后的Base64文本后加上一个或两个“=”号,代表补足的字节数
十进制 | 二进制 | 字符 | 十进制 | 二进制 | 字符 | 十进制 | 二进制 | 字符 | 十进制 | 二进制 | 字符 | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 000000 | A | 16 | 010000 | Q | 32 | 100000 | g | 48 | 110000 | w | |||
1 | 000001 | B | 17 | 010001 | R | 33 | 100001 | h | 49 | 110001 | x | |||
2 | 000010 | C | 18 | 010010 | S | 34 | 100010 | i | 50 | 110010 | y | |||
3 | 000011 | D | 19 | 010011 | T | 35 | 100011 | j | 51 | 110011 | z | |||
4 | 000100 | E | 20 | 010100 | U | 36 | 100100 | k | 52 | 110100 | 0 | |||
5 | 000101 | F | 21 | 010101 | V | 37 | 100101 | l | 53 | 110101 | 1 | |||
6 | 000110 | G | 22 | 010110 | W | 38 | 100110 | m | 54 | 110110 | 2 | |||
7 | 000111 | H | 23 | 010111 | X | 39 | 100111 | n | 55 | 110111 | 3 | |||
8 | 001000 | I | 24 | 011000 | Y | 40 | 101000 | o | 56 | 111000 | 4 | |||
9 | 001001 | J | 25 | 011001 | Z | 41 | 101001 | p | 57 | 111001 | 5 | |||
10 | 001010 | K | 26 | 011010 | a | 42 | 101010 | q | 58 | 111010 | 6 | |||
11 | 001011 | L | 27 | 011011 | b | 43 | 101011 | r | 59 | 111011 | 7 | |||
12 | 001100 | M | 28 | 011100 | c | 44 | 101100 | s | 60 | 111100 | 8 | |||
13 | 001101 | N | 29 | 011101 | d | 45 | 101101 | t | 61 | 111101 | 9 | |||
14 | 001110 | O | 30 | 011110 | e | 46 | 101110 | u | 62 | 111110 | + | |||
15 | 001111 | P | 31 | 011111 | f | 47 | 101111 | v | 63 | 111111 | / | |||
填充 | = |
以上为base64的转换表
简单示例
如上图所示,Man (3字节)编码的结果为 TWFu(4字节),很明显经过 base64 编码后体积会增加 1/3。Man 这个字符串的长度刚好是 3,我们可以用 4 个 base64 单元来表示。
如上图所示,字符 A 经过 base64 编码后的结果是 QQ==,该结果后面的两个 = 代表补足的字节数。
如上图所示,字符串 BC 经过 base64 编码后的结果是 QkM=,该结果后面的 1 个 = 代表补足的字节数。