码迷,mamicode.com
首页 > 其他好文 > 详细

服务器传回数据编码UTF8,直接拷贝会导致内容更改

时间:2015-10-01 17:53:12      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

strRetData += szBuffer;操作后数据变化:

char[] szBuffer

0x0050E360 6f 22 3a 7b 22 63 75 73 74 6f 6d 4e 61 6d 65 22 o":{"customName"
0x0050E370 3a 22 e6 a0 87 e5 87 86 e7 89 88 22 2c 22 63 75 :"?????????","cu
0x0050E380 73 74 6f 6d 52 65 66 65 72 65 6e 63 65 22 3a 22 stomReference":"

CString strRetData
0x03023250 74 00 6f 00 6d 00 4e 00 61 00 6d 00 65 00 22 00 t.o.m.N.a.m.e.".
0x03023260 3a 00 22 00 cd 93 e7 56 6f 56 17 94 3f 00 2c 00 :.".???VoV.??.,.
0x03023270 22 00 63 00 75 00 73 00 74 00 6f 00 6d 00 52 00 ".c.u.s.t.o.m.R.

 

解决办法:

while((nRead = pHttpFile->Read(szBuffer, sizeof(szBuffer)-1)) > 0)
{
    szBuffer[nRead] = \0;
    int nLen = MultiByteToWideChar(CP_UTF8, NULL, szBuffer, -1, NULL,NULL);
    TCHAR* pwData = new TCHAR[nLen];
    MultiByteToWideChar(CP_UTF8, NULL, szBuffer, -1, pwData, nLen);
    strRetData += pwData;
    delete pwData;
}

 

服务器传回数据编码UTF8,直接拷贝会导致内容更改

标签:

原文地址:http://www.cnblogs.com/xwin/p/4851217.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!