用过功能机的小伙伴们都会知道,每一条短信的字数被限制在70个汉字,超过之后就会被拆分为2条短信发送。
为什么要限制在70个汉字?多设置一点不好吗?
其实,是有历史原因的。
原因要追溯到上世纪80年代,Friedhelm Hillebrand是如今手机短信技术的主发明人,70个汉字(160个英文字符)就是他引起的。
他当时使用一台打字机随意打出一些由字母组成的信息,令人奇怪的是,这些信息每一条都是只有一两行,而且总字数也不会超过160个,160便成为他感觉颇具神奇的数字。
Friedhelm Hillebrand45岁的时候,他觉得如今手机短信160个字符已经足够使用,于是决定把这个数字定为一条短信内容的字数上线。
随着短信技术的发展,各大运营商也纷纷把160个字符作为单条短信的上线。
对编程技术有所了解的同学知道,由于字符本身使用编码方式的不同,最终将导致字符个数的不同。对于英文字母而言,一般采用7位ASCII编码,中文则为8位UCS-2编码,需要占用2个字节。
160个英文字符要用7位ASCII编码来进行表示,需要7*160位。然而换成8位UCS-2编码表示,则需要7*160/8位。同时,由于中文汉字需要占用2个字符,这样中文字符总数就是7*160/8/2,刚好等于70。
这就是为什么运营商规定单条短信的汉字限制为70个的原因。