//窄转宽
std::wstring s2ws(const std::string& input)
{
wchar_t* m_wchar;
int len = MultiByteToWideChar(CP_ACP, 0, input.c_str(), -1, NULL, 0);
m_wchar = new wchar_t[len + 1];
MultiByteToWideChar(CP_ACP, 0, input.c_str(), -1, m_wchar, len);
m_wchar[len] = '\0';
return m_wchar;
}
//宽转窄
std::string ws2s(const std::wstring& input)
{
int iSize;
char* pszMultiByte;
iSize = WideCharToMultiByte(CP_ACP, 0, input.c_str(), -1, NULL, 0, NULL, NULL);
pszMultiByte = (char*)malloc(iSize * sizeof(char));
WideCharToMultiByte(CP_ACP, 0, input.c_str(), -1, pszMultiByte, iSize, NULL, NULL);
return std::string(pszMultiByte);
}