inline int DChar2Char(const wchar_t* pUnicode,int iUnicodeLen,char* pAnsi,int iAnsiLen,UINT dwCodePage=CP_SYSTEM)
{
if(!pUnicode) {ATLASSERT(false);return 0;}
if(!pAnsi && iAnsiLen>0) {ATLASSERT(false);return 0;}
char DefaultChar=' ';
int bUsedDefaultChar;
return WideCharToMultiByte(dwCodePage,0,pUnicode,iUnicodeLen,pAnsi,iAnsiLen,&DefaultChar,&bUsedDefaultChar);
}
Из UNICODE получить char*
У меня есть русский текст в формате UNICODE. Каким макаром можно его получить как char* (или LPCSTR)? Я пробовал WideCharToMultiByte и wcstombs - ничего не получилось. Может кто знает?
Цитата:
Originally posted by Krivonos
У меня есть русский текст в формате UNICODE. Каким макаром можно его получить как char* (или LPCSTR)? Я пробовал WideCharToMultiByte и wcstombs - ничего не получилось. Может кто знает?
У меня есть русский текст в формате UNICODE. Каким макаром можно его получить как char* (или LPCSTR)? Я пробовал WideCharToMultiByte и wcstombs - ничего не получилось. Может кто знает?
Вообще-то, с WideCharToMultiByte должно было получиться.
Попробуй такую оберточку:
Код: