我需要将字符串从文本字段转换为字节。我怎么能这样做?
原因:文本框上的文字将通过短信发送给客户端,我受限了 文字到160chars但是如果我把特殊的字符比如@€‰‰‰€@ @ 那么它会大于 256个字节(这是短信的大小)。
所以我需要从256中删除转换后的文本到字节,并将结果转换为正常的字符长度。
实施例
var charsleft = toChars(256 - toBytes(mystring));
编辑:
原因是Javascript:我有一句话说“XXX chars left”
答案 0 :(得分:2)
使用您喜欢的语言执行 serverside 。 Java / ECMA脚本对于此类操作来说确实是个不好的地方。这已经是character encoding
的混乱了所以请你自己帮个忙,跳过麻烦content-types
和东西。将字符串作为UTF8
(例如)发送到您的服务器并在那里完成工作。
答案 1 :(得分:0)
您使用什么系统从jQuery发送短信?我怀疑它将通过HTTP请求,在这种情况下服务应该为您进行编码。在某些情况下,有些字符没有在GSM字符集中表示,而其他情况下字符需要表示为“转义对”字节。
您正在使用的服务的文档应该能够告知您正确的SMS正文格式。
例如:http://www.bulksms.com/int/docs/eapi/submission/character_encoding/
完全披露:我为BulkSMS工作