wstring StringToWString(const std::string &str) { LPCSTR pszSrc = str.c_str(); int nLen = ::MultiByteToWideChar(CP_ACP, 0, pszSrc, -1, NULL, 0); if (nLen == 0) return std::wstring(L""); wchar_t* pwszDst = new wchar_t[nLen]; if (!pwszDst) return std::wstring(L""); ::MultiByteToWideChar(CP_ACP, 0, pszSrc, -1, pwszDst, nLen); std::wstring wstr(pwszDst); delete[] pwszDst; pwszDst = NULL; return wstr; } string WStringToString(const std::wstring &wstr) { LPCWSTR pwszSrc = wstr.c_str(); int nLen = WideCharToMultiByte(CP_ACP, 0, pwszSrc, -1, NULL, 0, NULL, NULL); if (nLen == 0) return std::string(""); char* pszDst = new char[nLen]; if (!pszDst) return std::string(""); WideCharToMultiByte(CP_ACP, 0, pwszSrc, -1, pszDst, nLen, NULL, NULL); std::string str(pszDst); delete[] pszDst; pszDst = NULL; return str; }
wstring与string的互换
猜你喜欢
转载自blog.csdn.net/lasuerte/article/details/79235775
今日推荐
周排行