我正在使用一个库,它在const char *类型中生成UTF-8以null结尾的字符串。例子包括:
MIGUEL ANT?“NIODONA ESTEF ?? NIA我想将这两个const char *类型转换为CString …
即使您的应用程序编译为MBCS,您仍然可以使用Unicode字符串,缓冲区和Windows Unicode API而不会出现任何问题。
用原始指针将你的字符串作为UTF-8传递( const char* )或在诸如的字符串类中 CString 要么 std::string 。当你真的需要 的 给予 强> 用于显示的字符串,转换为Unicode并使用 W API明确。
const char*
CString
std::string
W
例如:
void UpdateDisplayText(const char* s) { CStringW ws = CA2W(s, CP_UTF8); SetDlgItemTextW(m_hWnd, IDC_LABEL1, ws); }