日期:2014-05-20  浏览次数:20655 次

J2ME发彩信时中文主题乱码的问题如何解决呀?
在网上搜了半天,只看到有人问,但没有什么有效的回答,只好到这里来向各位大侠求助了。
用J2ME发送彩信时,因为彩信的文字内容是用byte[]的方式传参的,所以可以指定其编码,将中文字串用utf-8编码后,接收显示正常,而设置彩信标题的API是setSubject(String s),这样传入的String就是Unicode,Unicode编码的中文在某些手机上接收后显示为乱码(不同手机对jsr205的实现不一样)。不如各位是如何解决在部分手机上中文主题显示为乱码的情况的,谢谢!

------解决方案--------------------
先把这String先编码一次,再转回String ,不知道这样可行不?
------解决方案--------------------
不行呀,因为Java中String就是Unicode编码的,别的编码的byte[]再编码回String就又成Unicode了,这也是MMS的API最恶心的地方了,只接收字串,不能指定串编码,要是和内容一样能接收byte[]那就没问题了。
------解决方案--------------------
我们不用手机直接发送彩信,一般是让服务器端的发送程序搞定
------解决方案--------------------
同问这个问题!

我也碰到了, S40发送到A1200上, 标题显示乱码.

还有的情况是在索爱的手机上发个一个收件人会重复提示

感觉各个手机的JSR205都实现的不一样, 太恶. 不知道有什么办法可以解决?
------解决方案--------------------
每种实现当然是不一样的 底层的实现不可能像上层的java一样发消息一个send函数就搞定
------解决方案--------------------
各个手机的编码不一定是一样的,有的手机是采用GBK编码,有些是采用UTF-8的