less..
WINBASEAPI int WINAPI MultiByteToWideChar( UINT CodePage, DWORD dwFlags, LPCSTR lpMultiByteStr, int cchMultiByte, LPWSTR lpWideCharStr, int cchWideChar);
WINBASEAPI int WINAPI WideCharToMultiByte( UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cchMultiByte, LPCSTR lpDefaultChar, LPBOOL lpUsedDefaultChar);
void main() { char * str = "유니코드"; WORD wc[8] = L"\0"; char cTemp[16] = { 0 };
MultiByteToWideChar( CP_ACP, 0, str, strlen(str)+1, wc, 8 ); // char 형 str 을 유니코드로
WideCharToMultiByte( CP_ACP, 0, wc, lstrlenW(wc), cTemp, 16 , 0, 0 );
// wc를 cTemp 로 printf (" cTemp : %s \n", cTemp); }
less..
less..
WideCharToMultiByte(형태로,0,바꿀문자열,바꿀문자열길이,새버퍼(out),새버퍼길이)
MultiByteToWideChar() 가 Double Byte Character Set 을 Unicode 로 바꿔줍니다. 반대로 바꿔주는 함수는 WideCharToMultiByte() 이구요. Unicode 를 읽는 방법 또한 간단합니다. 초성 중성 종성을 동일한 갯수대로 배치했으니, RGB 계산하듯이 그대로 곱하고 시작값인 0xac00 를 더하면 되죠. ( (초성 * 21 + 중성) * 28 + 종성 + 0xac00 )
--형태는,,MSDN에서 보덩가~
CP_ACP-ANCI로
ex)MultiByteToWideChar( CP_ACP, 0, str, strlen(str)+1, dbcs, 0x20 );
less..