我正在使用 jsms api 从 pc 向手机发送 unicode 消息。当我使用这部分代码时,它可以完美运行。我收到完美显示“ఈ ఒక తెలుగు సందేశం”的消息。
SmsMessage msg = new SmsMessage();
msg.setRecipient("+919561356345");
String unicodeMsg = "ఈ ఒక తెలుగు సందేశం"; //telugu script
msg.setUserData(unicodeMsg.getBytes("UTF-16BE"));
msg.setCodingGroup(SmsMessage.DC_GROUP_GENERAL);
msg.setAlphabet(SmsMessage.DC_UCS2);
msg.setMessageClass(SmsMessage.NO_CLASS);
service.init(props);
service.connect();
service.sendMessage(msg);
System.out.println("Message sent successfuly, "+msg.getMessage());
service.disconnect();
现在在代码中,如果我从数据库中检索相同的消息内容以摆动 TextArea,然后在此处提取它,我会在手机上收到一条空白消息。转换有问题吗?这是我的代码:
// here the argument text is taMessage.getText() where taMessage is TextArea;
public SendUnicodeMessage(String port, String text, Object no){
SmsMessage msg = new SmsMessage();
String num = no.toString();
msg.setRecipient(num);
String unicodeMsg = text.toString ;
msg.setUserData(unicodeMsg.getBytes("UTF-16BE"));
msg.setCodingGroup(SmsMessage.DC_GROUP_GENERAL);
msg.setAlphabet(SmsMessage.DC_UCS2);
msg.setMessageClass(SmsMessage.NO_CLASS);
service.init(props);
service.connect();
service.sendMessage(msg);
System.out.println("Message sent successfuly, "+msg.getMessage());
service.disconnect();