C++ MFC std::string转为 std::wstring
2017-12-14 09:38
351 查看
std::string转为 std::wstring
std::wstring UTF8_To_UTF16(const std::string& source) { unsigned long len = ::MultiByteToWideChar(CP_UTF8, NULL, source.c_str(), -1, NULL, NULL); //::表示全局函数 不加:: 默认先调用类中的同名函数 if(len == 0) return std::wstring(); wchar_t *buffer = new wchar_t[len]; ::MultiByteToWideChar(CP_UTF8, NULL, source.c_str(), -1, buffer, len); std::wstring dest(buffer); delete[] buffer; return dest; }
std::wstring转为 std::string
std::string UTF16_To_UTF8(const std::wstring& source) { unsigned long len = ::WideCharToMultiByte(CP_UTF8, NULL, source.c_str(), -1, NULL, NULL, NULL, NULL); //::表示全局 if(0 == len) { return std::string(); } char* buffer = new char[len]; ::WideCharToMultiByte(CP_UTF8, NULL, source.c_str(), -1, buffer, len, NULL, NULL); std::string dest(buffer); delete[] buffer; return dest; }
相关文章推荐
- 几种C++ std::string和std::wstring相互转换的转换方法
- C++ 由std::string转为LPCWSTR
- 几种C++ std::string和std::wstring相互转换的转换方法(转)
- 几种C++ std::string和std::wstring相互转换的转换方法
- 几种C++ std::string和std::wstring相互转换的转换方法
- 几种C++ std::string和std::wstring相互转换的转换方法
- VS2005:C++ std::string, std::wstring转换方法
- 几种C++ std::string和std::wstring相互转换的转换方法
- 几种C++ std::string和std::wstring相互转换的转换方法
- C++的中英文字符串表示(string,wstring),使用wcout.imbue(std::locale("chs"));本地化解析编码
- 将MFC的CString 类型转化为C++标准数据类型std::string
- 几种C++ std::string和std::wstring相互转换的转换方法
- VS2005:C++ std::string, std::wstring转换方法
- 实战c++中的string系列--std::string与MFC中CString的转换
- [C++][代码共享]将UTF-8的std::string转换成std::wstring
- VS2005:C++ std::string, std::wstring转换方法
- 几种C++ std::string和std::wstring相互转换的转换方法(转)
- C++: Converting an MFC CString to a std::string
- 实战c++中的string系列--std::string与MFC中CString的转换
- stackoverflow | C++ | std::wstring vs std::string | 独酌逸醉