当前位置: 首页 > 工具软件 > JSONVALUE > 使用案例 >

{“data“:null,“code“:1,“message“:“The JSON value could not be converted to System.String. Path: $.ala

盛超
2023-12-01

查下是不是要让请求的数据改成UTF-8格式

C++ 方法:

普通sting类型 转UTF-8编码格式字符串
涉及到的头文件:

函数所在头文件:windows.h

#include <windows.h>

wchar_t类型所需头文件:wchar.h

#include <wchar.h>

std::string string_To_UTF8(const std::string & str)
{
int nwLen = ::MultiByteToWideChar(CP_ACP, 0, str.c_str(), -1, NULL, 0);
 
wchar_t * pwBuf = new wchar_t[nwLen + 1];//一定要加1,不然会出现尾巴
ZeroMemory(pwBuf, nwLen * 2 + 2);
 
::MultiByteToWideChar(CP_ACP, 0, str.c_str(), str.length(), pwBuf, nwLen);
 
int nLen = ::WideCharToMultiByte(CP_UTF8, 0, pwBuf, -1, NULL, NULL, NULL, NULL);
 
char * pBuf = new char[nLen + 1];
ZeroMemory(pBuf, nLen + 1);
 
::WideCharToMultiByte(CP_UTF8, 0, pwBuf, nwLen, pBuf, nLen, NULL, NULL);
 
std::string retStr(pBuf);
 
delete []pwBuf;
delete []pBuf;
 
pwBuf = NULL;
pBuf = NULL;
 
return retStr;
}
//

调用: str=string_To_UTF8(str);

参考:c++ string、UTF8相互转换方法_巴塞罗那的风的专栏-CSDN博客_c++ 字符串转utf-8

 类似资料: