第三方平台上报中文至本应用程序,编码方式为ascii方式,我这里需要将ascii编码方式的中文字符转化为utf-8方式。查找了一些方法,iconv可以从unicode方式转为utf-8,实验已经通过。但是ascii转unicode却一直有问题。想使用mbstowcs方式转成unicode,但是函数总是返回-1.
例如“我”对应的ascii为0xce,0xd2
char szBuf[2] = {0xce,0xd2};
wchar_t wszBuf[64]={0};
int nRet = mbstowcs(wszBuf, szBuf, 2*2);
有人说要设这setlocale,但是貌似linux下木有ascii的对应的编码方式代码。小弟在此谢过。
如果有ascii直接转utf-8的方式, 也请指点。
1 个解决方案
#1
添加了setlocale后,还是return -1,望指点
#1
添加了setlocale后,还是return -1,望指点