1 CDuiString转换为std::string
在visual studio中如果设置的是使用多字节字符集,那么就可以使用CDuiString类的GetData方法进行直接转换,如果设置的是使用Unicode字符集,那么需要将宽字节转换成多字节字符集。
从CDuiString转换为std::string可参考以下代码:
std::string CDuiStringToString(const CDuiString& duistring) {
LPCTSTR str = duistring.GetData();
#ifdef _UNICODE
int size_str = WideCharToMultiByte(CP_UTF8, 0, str, -1, 0, 0, NULL, NULL);
char* point_new_array = new char[size_str];
WideCharToMultiByte(CP_UTF8, 0, str, -1, point_new_array, size_str, NULL, NULL);
std::string return_string(point_new_array);
delete[] point_new_array;
point_new_array = NULL;
return return_string;
#else
return std::string(str);
#endif
}
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:Duilib – CDuiString转换为std::string
原文链接:https://www.stubbornhuang.com/1119/
发布于:2021年01月25日 11:46:48
修改于:2023年06月26日 21:58:41
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论
50