ICU에 ANSI (ISO-8859-6)로 변환하기 위해 전달하려는 char * (utf-8 문자열 포함)가 있습니다. 불행히도 대부분의 ICU 함수는 char *가 아닌 UChar를 사용합니다.ICU에서 char *를 UChar로 변환 할 수 있습니까?
어떻게 변환합니까?
ICU에 ANSI (ISO-8859-6)로 변환하기 위해 전달하려는 char * (utf-8 문자열 포함)가 있습니다. 불행히도 대부분의 ICU 함수는 char *가 아닌 UChar를 사용합니다.ICU에서 char *를 UChar로 변환 할 수 있습니까?
어떻게 변환합니까?
문서를 보셨습니까? UnicodeString::fromUTF8
눈에 띄는 ...
// given char* str
UnicodeString ustr = UnicodeString::fromUTF8(StringPiece(str));
난 당신이 다음 UnicodeString::extract
를 사용하여 원하는 코드 페이지에 ustr
를 변환하는 방법을 알고 가정합니다.
정적 멤버 함수 FromUTF8
을 사용하여 UTF-8 StringPiece
을 UnicodeString
으로 변환 할 수 있습니다. 따라서 char *를 사용하는 경우 다음과 같이 변환 할 수 있습니다.
const char* str;
size_t len;
UnicodeString ucs = UnicodeString::FromUTF8(StringPiece(str, len));
"유니 코드 문자"= UTF-8을 포함 할 수 있습니까? – kennytm
'char *'를 타입으로 사용하면 기본 인코딩을 알 수 없습니다. * 인코딩 *은 중요한 부분입니다. – ildjarn
@KennyTM 예 utf-8 (감사의 말로 나는이 질문을 편집했습니다) – Abdelwahed