如果不需要人眼查看,按照字节传递是长度最少的。
为了将二进制内容用字符表现出来,方便人类使用,有各种标准规范。
最简单的一种叫做HEX,也就是Base16表示法。
一个2进制表示称为 bit,就是0或者1。8个bit称为一个byte, 类似 11011001, 一个byte可以表示两个16进制数。上面的数字转换为16进制就是 D9
计算机中都使用byte作为基本单位,所有的文件按字节的16进制表示。这就是HEX表示法. 使用字符范围是 0-9A-F,每个字节用两个字符表示,文字数量长度比二进制多一倍。
https://zh.wikipedia.org/wiki/%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6
Base64是一个减少编码长度的选择
Base64使用了64个字符来表示2进制。使用字符范围是 0-9A-Za-z,一共62个,外加上 加号+
和斜杠/
,共64个字符,另外使用等号=
用来作为后缀。
Base64用 6个bit作为一个单元对应某个字符。这样3个byte相当于24bit,对应4个base64字符
编码的时候每3个byte一组进行编码。编码后长度比二进制多8/6=1.33倍。
https://zh.wikipedia.org/wiki/Base64
但是Base64的编码结果并不适合人去检查,里面包含易混淆的数字"0"&