二进制转ASCII字符串有Base64,那么ASCII字符串转二进制的协议呢?

amc
  • 833

如题。当然啦,最简单的方式就是把字符串的二进制值保存下来。

不过假设我的文本里面仅由可视化的ASCII组成(也就是说值在0x20~0x7E之间),有没有现成的通用标准规定把这样的字符串转成二进制值呢?

回复
阅读 4.5k
3 个回答
✓ 已被采纳

然而并没有这样的统一标准。
Base64标准采用了64个字符对应了6bit,这种关系对于有8bit的Byte来说非常适合,产生的额外Byte也非常少(最多3个)。
当然,如果你来做一个0x20~0x7E的映射bit映射关系也是可以的,但是这里面有94个字符,是一个非常不规则的字符映射,如果要把它映射到1Byte的256中,就会产生47对128的关系。也就是说,最多会有47个多余Byte,那转换后的效果是非常差的,所以一般没有人去做这样的转换。

你说的不就是ASCII表吗?这东西就是定一个标准,然后大家遵守的.
可显示字符ASCII字符

来自:https://zh.wikipedia.org/wiki/ASCII

详细内容可以参照维基百科里面的"参考"条目,里面有相关的标准.

你知道吗?

宣传栏