string和LPCWSTR的直接转换函数

来源:互联网 发布:做快递怎么找淘宝客户 编辑:程序博客网 时间:2024/04/29 19:21
//wstring转换成stringstd::string WChar2Ansi(LPCWSTR pwszSrc){int nLen = WideCharToMultiByte(CP_ACP, 0, pwszSrc, -1, NULL, 0, NULL, NULL);if (nLen <= 0) return std::string("");char* pszDst = new char[nLen];if (NULL == pszDst) return std::string("");WideCharToMultiByte(CP_ACP, 0, pwszSrc, -1, pszDst, nLen, NULL, NULL);pszDst[nLen - 1] = 0;std::string strTemp(pszDst);delete[] pszDst;return strTemp;}

//string转换车wstringstd::wstring  StringToWString(const std::string& s){std::wstring wszStr;int nLength = MultiByteToWideChar(CP_ACP, 0, s.c_str(), -1, NULL, NULL);wszStr.resize(nLength);LPWSTR lpwszStr = new wchar_t[nLength];MultiByteToWideChar(CP_ACP, 0, s.c_str(), -1, lpwszStr, nLength);wszStr = lpwszStr;delete[] lpwszStr;return wszStr;}

1 0
原创粉丝点击