首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么不使用base128?

为什么不使用base128?
EN

Stack Overflow用户
提问于 2011-05-15 19:18:25
回答 5查看 76.2K关注 0票数 90

为什么只使用base64而不是base128在web上传输二进制数据?ASCII字符集有128个字符,理论上可以表示基数128,但在大多数情况下只使用base64而不使用base128。

EN

回答 5

Stack Overflow用户

发布于 2011-05-15 19:23:24

因为这128个字符中的一些字符是无法打印的(主要是那些低于码点0x20的字符)。因此,它们不能作为字符串在线路上可靠地传输。而且,如果超过码点128,可能会出现编码问题,因为系统之间使用了不同的编码。

票数 65
EN

Stack Overflow用户

发布于 2013-12-19 21:07:50

前32个字符是控制字符完全没有关系,因为您不必使用它们来获取128个字符。我们有256个字符可供选择,只有前32个字符是控制字符。剩下192个字符,因此完全可以在不使用控制字符的情况下使用128。

原因是:它必须是看起来相同的东西,并且无论在哪里你都可以复制和粘贴。因此,它必须是字符,将显示相同的任何论坛,聊天,电子邮件等。这意味着我们不能使用字符,论坛/聊天/电子邮件客户端通常会使用这些字符进行格式化或忽略。它还必须是相同的字符,而不管字体、语言和区域设置如何。

这就是原因!

票数 12
EN

Stack Overflow用户

发布于 2011-05-15 19:22:54

不确定,但我认为较低的值(表示控制代码或其他东西)在HTTP请求/响应中不能可靠地作为文本/字符传输,而高于127的值可能是区域设置/代码页/其他特定的,所以不可能有128个不同的字符可以在所有浏览器/平台上工作。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6008047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档