手机AT指令储存后-乱码

headsonlkc 2011-01-10 05:50:34
AT+CPBW=1,"65981171",129,"B办公室/W"
为什么存后,显示是乱码?

解决后再加分!

谢谢!
...全文
53 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
headsonlkc 2011-01-11
  • 打赏
  • 举报
回复
在里面的汉字不见了,但英文还在!!!!!!
headsonlkc 2011-01-11
  • 打赏
  • 举报
回复
B办公室/W
以上的字,我用这个方法写入Write(Encoding.Default.GetBytestextBox2.Text);
显示结果是这个B0l9+JR/W

headsonlkc 2011-01-11
  • 打赏
  • 举报
回复
手机的IT集只有三个,IRA,GSM,UCS2三种
用户 昵称 2011-01-11
  • 打赏
  • 举报
回复
俺对AT指令是一点不懂,就是脚着如果你直接用 "B办公室/W",那么他应该用gb2312格式发送的,俺前面的不是要你转成"X2"的string,而是想法将
0x00, 0x42, 0x52, 0x9E, 0x51, 0x6C, 0x5B, 0xA4, 0x00, 0x2F, 0x00, 0x57,
这些数据放到"B办公室/W"这个地方试试。
headsonlkc 2011-01-11
  • 打赏
  • 举报
回复
string temp="";
byte[] a2 = Encoding.Unicode.GetBytes(LoginByte);
for (int i = 0; i < a2.Length; i++)
{
temp += a2[i].ToString("X2");
}
return temp;
这个和你的是不是一样的呢?你说的我明,但转换后还是一样
用户 昵称 2011-01-10
  • 打赏
  • 举报
回复
要存储成ucsw格式


//
ucs280_string ( "B办公室/W" )
//--
ucs280_string convert utf16-little-endian format input data to ucs2 80 format
//--
input = 42 00 9E 52 6C 51 A4 5B 2F 00 57 00
//--
output = 00 42 52 9E 51 6C 5B A4 00 2F 00 57
//

//-----
Final result --- 00 42 52 9E 51 6C 5B A4 00 2F 00 57

790

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 其他移动相关
社区管理员
  • 移动开发其他问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧