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

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

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

阅读 6.9k
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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进