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);
  • 相关阅读:
    JS函数强化
    Javascript创建对象的方式
    call和apply的区别
    事件绑定和普通事件有什么区别
    又走一个
    风的季节
    关于Dictionary的线程安全问题
    进程管理简述
    开通
    WPF 音乐播放器界面
  • 原文地址:https://www.cnblogs.com/leipei2352/p/2761755.html
Copyright © 2011-2022 走看看