本文共 775 字,大约阅读时间需要 2 分钟。
#include < string > std:: string ws2s( const std::wstring & ws){ std:: string curLocale = setlocale(LC_ALL, NULL); // curLocale = "C"; setlocale(LC_ALL, " chs " ); const wchar_t * _Source = ws.c_str(); size_t _Dsize = 2 * ws.size() + 1 ; char * _Dest = new char [_Dsize]; memset(_Dest, 0 ,_Dsize); wcstombs(_Dest,_Source,_Dsize); std:: string result = _Dest; delete []_Dest; setlocale(LC_ALL, curLocale.c_str()); return result;}std::wstring s2ws( const std:: string & s){ setlocale(LC_ALL, " chs " ); const char * _Source = s.c_str(); size_t _Dsize = s.size() + 1 ; wchar_t * _Dest = new wchar_t[_Dsize]; wmemset(_Dest, 0 , _Dsize); mbstowcs(_Dest,_Source,_Dsize); std::wstring result = _Dest; delete []_Dest; setlocale(LC_ALL, " C " ); return result;} 这些都是最近自己在开发项目中用到的
转载地址:http://yknex.baihongyu.com/