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

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;
}
时间: 2025-01-31 04:26:17

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

中文系统下,UTF-8编码文本文件读取导致的错误

一.UTF-8编码文件读取导致的错误 有个txt文件,里面内容为: aaa bbb ccc 以UTF-8编码方式打开txt文件,顺序读取,将里面的值放到一个hashset中,并判断aaa是否在在hashset中 class { public static void main(String[] args) { try { HashSet<String> specialCateSet= new HashSet<String>(); FileInputStream a = new Fil

更改邮件发送语言为英语,解决编码为UTF8邮箱注册账号,邮件内容乱码问题

Change email English language, code for UTF8 mailbox registered account, email content garbled. 1. code analysis 乱码分析 通过对中文编码的邮件服务器使用原来的系统(GB2312) The original system used by the mail server encoding for the Chinese code (GB2312) 我使用outlook.com的邮箱(UT

服务器传回数据是UTF8编码,需要转换Unicode

int nLen = MultiByteToWideChar(CP_UTF8, NULL, szBuffer, -1, NULL,NULL); TCHAR* pwData = new TCHAR[nLen]; MultiByteToWideChar(CP_UTF8, NULL, szBuffer, -1, pwData, nLen); strData.Format(_T("%s"),pwData); delete pwData;

linux两台服务器之间文件/文件夹拷贝

跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹---------------------------------------------- 把当前文件夹tempA拷贝到 目标服务器10.127.40.25 服务器的 /tmp/wang/文件夹下 scp -r /tmp/tempA/ [email protected]:/tmp/wang/ 其中wasadmin是目标服务器的用户名,执行命令提示输入密码,然后输入密码即可 ---------------

服务器崩溃后硬盘再上线同步导致数据丢失恢复过程

[服务器数据恢复故障介绍] ··数据恢复中心近期接到客户服务器数据恢复案例并成功恢复,经客户许可后现将数据恢复过程分享给大家,下面简单介绍一下本次服务器数据恢复的故障情况.··客户使用的是某品牌的服务器,搭配了多块硬盘组成一组raid5磁盘阵列,作为公司的共享存储池使用,服务器上包含公司数据库文件和普通文件.由于硬盘掉线导致服务器内的D分区识别不到,服务器管理员查看设备后对服务器进行重启操作,导致服务器掉线硬盘重新上线并同步数据,同步进度到36%时服务器被管理员强制关机.· [服务器数据恢复检测

服务器迁移,php版本不同可能导致的问题

今天在服务器做了迁移以后,前台可以正常显示和调用,登陆后台显示500错误,一般这种情况下都要查看核心跳转文件,经查看发现login.php文件并没有调用.因为找不到login.php文件,那就证明这个文件里是有语法错误.打开服务器报错信息发现.Fatal error:Call-time pass-by-reference has been removed 经过查找资料发现,自己原来的服务器环境是5.2版本的,更换了服务器以后升级到了5.4版本,所以就出现了参数传递错误. Fatal error:

ajax查询数据库,服务器传回json字符串,js解析json

服务器端获得要查询的东西,查询数据库,将查询的信息,以json字符串的形式返回给浏览器 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String departmentID=request.getParameter("departmentID"); DataBaseHandle dataBaseHandl

及时更新Exchange服务器补丁防止因为服务器硬件CPU漏洞导致风险

及时更新Exchange宿主机服务器补丁防止因为硬件或虚拟化服务器CPU漏洞产生不必要的风险.具体可以参考:(https://support.microsoft.com/en-us/help/4074871/exchange-server-guidance-to-protect-against-speculative-execution-side) 各个windows服务器修复CPU漏洞的补丁信息以及验证方法如下(https://support.microsoft.com/en-us/help/

[单选题].htaccess文件提供了针对每个目录改变配置的方法,但启用.hatccess都会导致服务器的性能下降,以及会导致一些不安全的因素。在下面的指令中,哪一个可以禁止在目录下使用该文件?

AllowOverride None AllowOverride ALL Options Indexes Deny from all 正确答案: