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

用程序往移动信息机上面发短信,中文字符会变成问号或乱码
做了个小程序,在手机上安装以后填好内容可以往指定的号码发送短信,

如果目的号码是手机,则收到的内容能正常显示,

如果目的号码是移动信息机号码(10657……),则收到的内容里面中文变成问号或者乱码,

utf-8、gb2312、US-ASCII、iso8859_1 这些编码都试过了,但还是不行。


用的类是 MessageConnection, 提供的接口只有两个函数;听手机开发的同事说,中文短信要在短信头前面做一下修改之类云云是不可能的了。

请问这该咋整。
------解决方案--------------------
UTF-8是可以的,WTK打包用UTF-8,代码也用UTF-8格式
------解决方案--------------------
如下,获得系统默认的编码再转换,后面的"GBK"可以换成其他的测测,不要直接写message.getBytes("iso8859_1","GBK");写成下面的方式
new String(message.getBytes(System.getProperty("micoredition.encode")),"GBK");