WSTRTOSTR()的问题求解

pj86224 2009-11-25 04:36:34
unsigned short a;
unsigned char b;

WSTRTOSTR(a,b,a.length+1);

上面是段代码的一部分,a是源字符串,b是目标字符串,本人刚接触BREW不久,我想把宽字节的转换为单字节的,当a是字符或数字时目标字符串能正确转化,但是当a为汉字时,目标字符串却是乱码,求高手解释一下,如果要正确输出目标字符串,该怎么写或用其他的什么函数?如UTF8TOWSTR.
...全文
1874 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pj86224 2010-07-14
  • 打赏
  • 举报
回复
结贴了
alex_goacross 2009-12-30
  • 打赏
  • 举报
回复
WSTRTOUTf8试试看。。
wyl_stream 2009-12-30
  • 打赏
  • 举报
回复
WSTRTOSTR()转换宽字节到单字节是这样转的:将源字符串的一个宽字节的低字节赋给目的字符串的一个单字节,将宽字节的高字节去除不要。所以当源字符串是字符或数字时,它的每个宽字节的高字节是0x00,低字节是字符或数字的值,将其高字节去掉也没关系。但源串是汉字编码时,其高字节不是0x00,将其去掉就不能完整表示汉字了。

你可以试试WSTRCOMPRESS(),应该就好用了。
laozhong110 2009-12-22
  • 打赏
  • 举报
回复
WSTRTOSTR() 是转换不了中文的
FLYUP_CHEN 2009-12-22
  • 打赏
  • 举报
回复
在brew上,汉字的编码一般是3个字节的UTF8编码
bencharluo 2009-11-25
  • 打赏
  • 举报
回复
确实是的,先搞清楚是哪种编码
  • 打赏
  • 举报
回复
如果是unicode编码,可以是WSTRTOSTR(pSrc,pBuf,WSTRLEN(pSrc)*2);
路飞-总裁 2009-11-25
  • 打赏
  • 举报
回复
汉字是占两个字节的,把他转成一个字节的当然就是乱码了,识别不了。

2,851

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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