How to realize the conversion between wstring and string in cocos2d-x Development
This article is about how to achieve the conversion between wstring and string in cocos2d-x development. I think it is very practical, so I share it with you. I hope you can get something after reading this article. Let's take a look at it.
The operation technology of Chinese characters must be faced in cocos2d-x development, in which the conversion between wstring and string may be used. What I found on the Internet can be applied to android.
The alternative for Chinese characters in WIN32 and other platforms is to use the following two functions:
The code for converting wstring to string is as follows:
Std::string ws2s (const std::wstring& ws) {string curLocale = setlocale (LC_ALL, NULL); 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;} string is converted to wstring: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;} orstring a = "xxxx"; wstring b (a.begin (), a.end ()); above is how to realize the conversion between wstring and string in cocos2d-x development. The editor believes that there are some knowledge points that we may see or use in our daily work. I hope you can learn more from this article. For more details, please follow the industry information channel.