ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 문자형식 변환
    랭귀지/C\C++ 2009. 7. 14. 14:41

    유니코드 -> 멀티바이트 : WideCharToMultiByte()

    멀티바이트 -> 유니코드MultiByteToWideChar()


    자세한 내용은 MSDN을 참고하고 일반적으로 사용하는것은 다음과 같이 하면 된다.


    [유니코드 -> 멀티바이트]


    WCHAR *strWC = _T("abcde");

    CHAR strMB[1024];

    WideCharToMultiByte( CP_ACP, 0, strWC, -1, strMB, 1024, NULL, NULL );


    유니코드 문자열인 strWC의 내용이 멀티바이트 문자열로 strMB에 들어간다.

    함수의 4번째 인자에는 변환할 문자열 길이가 들어가는데 -1로 하게 되면 원본(strWC)문자열에서 NULL문자가 나오는 곳까지 모두 변환하게 된다. 함수의 5번째 인자는 변환해서 들어갈 대상 문자열의 길이이다.


    [멀티바이트->유니코드]


    CHAR *strMB = "abcde";

    WCHAR strWC[1024];

    MultiByteToWideChar( CP_ACP, 0, strMB, -1, strWC, 1024 );



    댓글

Designed by Tistory.