码迷,mamicode.com
首页 > 其他好文 > 详细

CString和string在unicode与非unicode下的相互转换(转)

时间:2017-12-01 16:42:50      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:控制   ext   sim   letter   color   pad   ase   transform   超级   

原文转自 http://blog.csdn.net/u014303844/article/details/51397556

 

CString和string在unicode与非unicode下的相互转换

最近想写一个手机控制电脑的玩具,涉及到了socket通信,数据采用json通用格式,首先是jsoncpp的编译问题太烦了,然后还有更烦的,java中的String多容易的玩意儿,然后到了c/c++/mfc中超级烦,搜索了很久的攻略,用了大把的时间,最后写了个这玩意儿出来,或许可以帮助到一些需要此的道友们哈

string toString(CString cs)
{
#ifdef _UNICODE  
    //如果是unicode工程
    USES_CONVERSION;
    std::string str(W2A(cs));
    return str;
#else  
    //如果是多字节工程
    std::string str(cs.GetBuffer());
    cs.ReleaseBuffer();
    return str;
#endif // _UNICODE   
}

CString toCString(string str)
{
#ifdef _UNICODE  
    //如果是unicode工程  
    USES_CONVERSION; CString s(str.c_str());
    CString ans(str.c_str());
    return ans;
#else  
    //如果是多字节工程
    //string 转 CString
    CString ans;
    ans.Format("%s", str.c_str());
    return ans;
#endif // _UNICODE
}

 

CString和string在unicode与非unicode下的相互转换(转)

标签:控制   ext   sim   letter   color   pad   ase   transform   超级   

原文地址:http://www.cnblogs.com/happykoukou/p/7942871.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!