728x90
반응형
728x90
반응형
728x90
반응형

MultiByteToWideChar 함수로 멀티바이트 문자열을 유니코드로 변환하기

MultiByteToWideChar 함수는 멀티바이트 문자열을 유니코드 문자열로 변환하는 Windows API 함수입니다.

이 함수는 특정 코드 페이지를 사용하여 멀티바이트 문자열을 유니코드로 변환합니다.

함수 원형은 다음과 같습니다:

int MultiByteToWideChar(
  UINT   CodePage,
  DWORD  dwFlags,
  LPCSTR lpMultiByteStr,
  int    cbMultiByte,
  LPWSTR lpWideCharStr,
  int    cchWideChar
);

각 매개변수의 의미는 다음과 같습니다:

  • CodePage: 변환에 사용할 코드 페이지를 지정합니다. 예를 들어, 한국어의 경우 949(ANSI/OEM - Korean (Unified Hangul Code))를 사용합니다. 코드 페이지 상수로 CP_ACP 등을 사용할 수 있습니다.

  • dwFlags: 변환 동작을 제어하는 플래그로, 일반적으로 0을 사용합니다.

  • lpMultiByteStr: 변환할 멀티바이트 문자열의 포인터입니다.

  • cbMultiByte: 변환할 멀티바이트 문자열의 길이입니다. 이 값이 -1이면 함수는 문자열이 null로 종료된 것으로 간주합니다.

  • lpWideCharStr: 변환된 유니코드 문자열을 저장할 버퍼의 포인터입니다.

  • cchWideChar: 유니코드 문자열 버퍼의 크기입니다.

함수의 반환값이 0이면 변환에 실패한 것이며, 이 경우 GetLastError()를 호출하여 오류 정보를 확인할 수 있습니다. 주로 출력 버퍼의 크기가 충분하지 않거나 입력 문자열이 너무 길 때 오류가 발생합니다.

이 함수는 멀티바이트 문자열을 유니코드로 변환할 때 유용하게 사용됩니다.

728x90
반응형

+ Recent posts