Base64是一种基于64个可打印字符来表示二进制数据的表示方法。
由于2的6次方等于64,所以每6个位元为一个单元,对应某个可打印字符。
三个字节有24个位元,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。
Base64常用于在通常处理文本数据的场合,表示、传输、存储一些二进制数据。
包括MIME的email,email via MIME,在XML中存储复杂数据.
编码后的数据比原始数据略长,为原来的。
unsigned char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
文本 M a n
ASCII编码 77 97 110
索引 19 22 5 46
Base64编码 T W F u
如果要编码的字节数不能被3整除,最后会多出1个或2个字节
在编码后的base64文本后加上一个或两个'='号,代表补足的字节数。
参考:
http://zh.wikipedia.org/wiki/Base64
由于2的6次方等于64,所以每6个位元为一个单元,对应某个可打印字符。
三个字节有24个位元,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。
Base64常用于在通常处理文本数据的场合,表示、传输、存储一些二进制数据。
包括MIME的email,email via MIME,在XML中存储复杂数据.
编码后的数据比原始数据略长,为原来的。
unsigned char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
文本 M a n
ASCII编码 77 97 110
索引 19 22 5 46
Base64编码 T W F u
如果要编码的字节数不能被3整除,最后会多出1个或2个字节
在编码后的base64文本后加上一个或两个'='号,代表补足的字节数。
参考:
http://zh.wikipedia.org/wiki/Base64