利用unicode编程时,常常涉及到字符间的转化。 宽字符转为多字节字符: wchar_t wText[20] = {L"宽字符转换实例!OK!"}; DWORD dwNum = WideCharToMultiByte(CP_OEMCP,NULL,wText,-1,NULL,0,NULL,FALSE); char *psText; psText = new char[dwNum]; if(!psText) { delete []psText; } WideCharToMultiByte (CP_OEMCP,NULL,wText,-1,psText,dwNum,NULL,FALSE); delete []psText; 多字节字符转为宽字符: DWORD dwNum = MultiByteToWideChar (CP_ACP, 0, sText, -1, NULL, 0); wchar_t *pwText; pwText = new wchar_t[dwNum]; if(!pwText) { delete []pwText; } MultiByteToWideChar (CP_ACP, 0, sText, -1, pwText, dwNum); delete []pwText;