短信字数计费规则
当我们在输入无论是:1个汉字、1个字母、1个数字还是1个符号.....我们都称它为一个字符。
一条短信字数=短信模板内容字数 + 短信签名的字数
短信字数<=70个字,为一条普通短信
短信字数>70个字,即为长短信
也就是说一条普通短信的字数为70个字以内,而大于70个字的为长短信。
说到长短信,它的计费规则又与普通短信不同:
长短信字数依照67个字为一条进行计费,运营商网关根据服务商长短信的提交顺序,对长短信按顺序进行推送,最后在用户的手机上以一大条作为显示。
目前长短信最优体验建议输入字数为500个字以内。
为啥是70?
一条普通短信为什么是70个汉字?为什么不是69个字?难道这个有什么特别的讲究吗?
实际上其原因要追溯到上世纪80年代,手机短信技术的主发明人Friedhelm Hillebrand,70个汉字(160个英文字符)的定义就是由他设置的。
当时发明人Friedhelm Hillebrand使用一台打字机随意打出一些由字母组成的信息,令他感觉奇怪的是,这些信息每一条都是只有一两行,而且总字数也不会超过160个,所以160便成为他感觉颇具神奇的数字。
随后,短信发明人Hillebrand便遵从这一现象,经过反复试验后将160个字符作为短信长度上限,英文字母可发160个。
亲爱的程序员们都知道,由于英文字母采用7位ASCII编码,而汉字则采用8位UCS-2编码并占2个字节,所以160个字符按照7位ASCII编码来换算,即160X7=1120位;
汉字则是按照8位的UCS-2编码,即8位一个字符,一个汉字占2个字符,这样1120位换算成汉字数就是1120/8/2=70。
这就是为何一条短信发160个英文或70个汉字的原因啦~