간체 중국어 GB 2312와 같은 멀티 바이트 텍스트 문자열 간의 텍스트를 C++을 사용하여 UTF8로 변환하려면 어떻게해야합니까?중국어 간체 GB 2312 텍스트 문자를 UTF8로 변환
1
A
답변
3
유닉스 시스템에서는 iconv 라이브러리를 사용하는 것이 가장 좋습니다.
는 참조 iconv_open, iconv, iconv_close
당신은 물론 문자 인코딩 (EUC-CN, HZ)을 알고해야 할 것이다.
유닉스 시스템이 아니라면 OS에서 몇 가지 지원을 검색하십시오. 손으로 문자를 변환하는 것은 매우 어렵습니다.
2
WinAPI : MultiByteToWideChar 및 그 반대의 경우는 WideCharToMultiByte입니다. 나중에 샘플을 게시 할 수 있습니다.
그러나 UTF-8은 응용 프로그램에서 표현하기에 다소 까다 롭습니다. MultiByteToWideChar 함수는 문자열을 UTF-16 (UCS2)으로 변환합니다. 소프트웨어에서이 형식을 내부적으로 사용하고 프로그램에서 이러한 출력을 생성해야하는 경우에만 WideCharToMultiByte를 사용하여 UTF-8로 변환하는 것이 좋습니다. 이것은 Windows에서 국제화/유니 코드를 수행하는 표준 방법입니다. & OS X
유용합니다. 감사 –