会AT_COMMand的大侠请进

lucky749 2009-06-02 02:05:35
我用AT+CPBR=1,4 得出
+CPBR: 1,"13560034389",129,"80679779CB6B66FFFF"
+CPBR: 2,"477863",129,"80624B673A5361FFFF"
+CPBR: 3,"13826037365",129,"8099965BCCFFFF"
+CPBR: 4,"13826493264",129,"805C0F96C4FFFF"
请问应该怎么对最后面"8099965BCCFFFF"的进行解码成中文。
十分感谢!!!!
C#
...全文
40 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jack_fangdb 2009-06-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 lucky749 的帖子:]
我用AT+CPBR=1,4 得出
+CPBR: 1,"13560034389",129,"80679779CB6B66FFFF"
+CPBR: 2,"477863",129,"80624B673A5361FFFF"
+CPBR: 3,"13826037365",129,"8099965BCCFFFF"
+CPBR: 4,"13826493264",129,"805C0F96C4FFFF"
请问应该怎么对最后面"8099965BCCFFFF"的进行解码成中文。
十分感谢!!!!
C#
[/Quote]

+CPBR: 1,"13560034389",129,"80679779CB6B66FFFF“
为例:
80为 中文 编码区
一个中文占两个字节 ,查汉字内码表
6797 林
79CB 秋
6B66 武

以下同(略)

如果对短信协议还有疑问,可以再讨论
Roy_ly 2009-06-02
  • 打赏
  • 举报
回复
C#的话我不知道该怎么操作了,C++的话就是把这些UNICODE码的数值放到内存中,按宽字符寻址出来的就是中文了,给一段C++代码给你参考一下。


VOID HexStr2Unicode(const std::string HexStr, wchar_t UnicodeStr[1024])
{
int i, j;
int iStrLen;
int iTemp;
CHAR *p = NULL;
CHAR HexChar[1024];
ZeroMemory(HexChar, sizeof(HexChar));
strcpy(HexChar, HexStr.c_str());
ZeroMemory(UnicodeStr, 1024 * sizeof(wchar_t));
CHAR TempChar[32];
ZeroMemory(TempChar, sizeof(TempChar));
iStrLen = strlen(HexChar);
for (i = 0, j = 0; i < iStrLen; i+=2,j++)
{
memcpy(TempChar, HexChar + i, 2);
sscanf(TempChar, "%x", &iTemp);
p = (CHAR*)UnicodeStr;
if (j % 2 == 0)
{
p[j+1] = iTemp;
}
else if (j % 2 == 1)
{
p[j-1] = iTemp;
}
}
}

790

社区成员

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

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