zoukankan      html  css  js  c++  java
  • mfc笔记之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);
  • 相关阅读:
    Facelets应用程序的生命周期
    JavaServer Faces生命周期概述
    spring security使用自定义登录界面后,不能返回到之前的请求界面的问题
    记一次使用mybatis进行like 模糊查询遇到的问题
    用Filter作用户授权的例子
    p132代码解析
    xml
    java EE第一周博客
    spring security的简单应用
    Java包装类,以及Integer与int之间的比较
  • 原文地址:https://www.cnblogs.com/leipei2352/p/2761755.html
Copyright © 2011-2022 走看看