string,wstring,CString

一.概念  

    string是C++提供的标准字符串操作类.wstring是操作宽字符串的类.

    CString是对string(字符串)和wstring(宽字符串)的一个封装,常用在mfc中.用来解决编码问题的.

二.转换

    string或者wstring转换到CString:

    要把std::string或者std::wstring类型的数据存放到CString中,直接调用string::c_str()或者wstring::c_str()就行了.

    CString转换到string或者wstring

    CString::GetBuffer(0)就能转换到string或者wstring.如果编译时候定义了UNICODE,则转换到wstring;如果未定义,则转换到string.

     string与wstring之间的转换

    微软提供了一个工具,用于string和wstring之间的转换.

    utf8conv.h

    这个头文件中提供了一个utf8util 的命名空间,里面包含了如下的字符转换函数:

   1:  std::wstring UTF16FromUTF8(const std::string & utf8);  
   2:  std::wstring UTF16FromUTF8(const char * utf8); 
   3:  std::string UTF8FromUTF16(const std::wstring & utf16); 
   4:  std::string UTF8FromUTF16(const wchar_t * utf16); 

这个工具足够string与wstring之间的转换了.

 

其他:

    string,wstring转数字

   需要使用stringstream,wstringstream(都在sstream头文件中包含)

 

   1:  int val;
   2:  string str;
   3:  stringstream ss (stringstream::in | stringstream::out);
   4:  ss << str;
   5:  ss >> val;

CString 转数字

          _ttoi()这是个宏,如果定义了UNICODE,则等价于_wtoi(),否则对应atoi(),要使用,需要引入<stdlib.h>

数字转CString

   1:  int iValue = 0;
   2:  CString::Format(_T("%d") , iValue);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值