版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_23494915/article/details/78732581

1、多字符集设置下:
CString To char*:
1)、
CString str; 
char buf = str.GetBuffer();
2)、
CString str;
char buf = (LPSTR)(LPCSTR)str;

char To CString
1)、
char buf;
CString str(buf);

2、Unicode字符集下:
CString To char
:
1)、
CString st =_T(“123”);  
int len =WideCharToMultiByte(CP_ACP,0,str,-1,NULL,0,NULL,NULL);  
char buf =new char[len +1];  
WideCharToMultiByte(CP_ACP,0,str,-1,buf,len,NULL,NULL );

//…  
delete[] buf;

char To CString
1)、
char buf;
CString str(buf);

3、方法:

static std::string Unicode2ANSI(LPCWSTR lpszSrc)

{
std::string sResult;
if (lpszSrc != NULL)
{
int  nANSILen = WideCharToMultiByte(CP_ACP, 0, lpszSrc, -1, NULL, 0, NULL, NULL);
char
pANSI = new char[nANSILen + 1];
if (pANSI != NULL)
{
ZeroMemory(pANSI, nANSILen + 1);
WideCharToMultiByte(CP_ACP, 0, lpszSrc, -1, pANSI, nANSILen, NULL, NULL);
sResult = pANSI;
delete[] pANSI;
}
}
return sResult;

}

static std::wstring ANSI2Unicode(LPCSTR lpszSrc)

{
std::wstring sResult;
if (lpszSrc != NULL)
{
int nUnicodeLen = MultiByteToWideChar(CP_ACP, 0, lpszSrc, -1, NULL, 0);
LPWSTR pUnicode = new WCHAR[nUnicodeLen + 1];
if (pUnicode != NULL)
{
ZeroMemory((void)pUnicode, (nUnicodeLen + 1) * sizeof(WCHAR));
MultiByteToWideChar(CP_ACP, 0, lpszSrc,-1, pUnicode, nUnicodeLen);
sResult = pUnicode;
delete[] pUnicode;
}
}
return sResult;

}

CString与char之间的转换相关推荐

  1. CString,string,char*之间的转换(转)

    Bluestorm's Space 博客园 首页 新随笔 联系 订阅 管理 随笔 - 588  文章 - 3  评论 - 137 CString,string,char*之间的转换(转) 这三种类型各 ...

  2. MFC中的CString.Format及CString,string,char*之间的转换

    1.CString.Format的使用:https://blog.csdn.net/wangkaishou/article/details/5846152 2.CString,string,char* ...

  3. VC之CString,wchar_t,int,string,char*之间的转换

    VC之CString,wchar_t,int,string,char*之间的转换 1. CString 转 wchar_t CString path = "asdf"; wchar ...

  4. CString,int,string,char*之间的转换

    <C++标准函数库>中说的   有三个函数可以将字符串的内容转换为字符数组和C-string   1.data(),返回没有"\0"的字符串数组   2,c_str() ...

  5. cstring转为string vc_VC之CString,wchar_t,int,string,char*之间的转换-阿里云开发者社区

    VC之CString,wchar_t,int,string,char*之间的转换 1. CString 转 wchar_t CString path = "asdf"; wchar ...

  6. c 语言 uint8 转char,在C中的uint8和char之间的转换

    我有一个API来实现对EEPROM的写入操作.下面是它的声明:在C中的uint8和char之间的转换 CYBLE_API_RESULT_T CyBle_StoreAppData (uint8 * sr ...

  7. CString,int,string,char*之间的转换(转)

    ............................................................... <C++标准函数库>中说的   有三个函数可以将字符串的内容 ...

  8. char*,wchar_t*,CString和BSTR之间的转换

    前言 本文并不尝试列举出所有的转换方法,只列举作者认为方便易用的方法. 1.char*和wchar_t*的相互转换 可以利用中间类_bstr_t(头文件comdef.h)方便的进行相互转换 const ...

  9. CString、TCHAR*、char*之间的转换函数

    CString->LPTSTR的转化可以用函数GetBuff() CString StrInfo="C://Windows"; LPTSTR StrTest=StrInfo. ...

  10. MFCC中CString, int, string, char之间的转换

    1.    CString  -->  char* (1)传给未分配内存的指针 CString cstr ="ASDDSD"; char *ch =cstr.GetBuffe ...

最新文章

  1. 开平方的 7 种算法
  2. 数据结构之python实现顺序表
  3. 关于中值滤波算法,以及C语言实现(转)
  4. 数据库的硬迁移和mysql 5.5.38源码安装
  5. 4月18日 MySQL学习
  6. http get 消息的作用是什么?_http基础知识
  7. 【程序设计】变量的作用域
  8. Kubernetes 架构(上)- 每天5分钟玩转 Docker 容器技术(120)
  9. codeforces 385C Bear and Prime Numbers
  10. JavaScript数据类型之Boolean以及undefined和null(4)
  11. 重复类发展手法_正确护肤手法图解!
  12. NOWCODER暑期多校第四场F:Beautiful Garden(签到题)题解
  13. 计算机图形学完整笔记(八):曲线曲面 - 2
  14. 怎么在运行上面看域名服务器,域名dns服务器查询方法是什么?如何查看dns服务器地址...
  15. 2021年读书节书单推荐
  16. win7家庭版怎么把计算机显示桌面,Win7怎样显示桌面
  17. 罗辑思维八里庄沙龙:Cloud Native 的演进(—)--从零开始了解云原生架构
  18. 上传本地.xlsx(.xls)文件,实现页面表格数据预览
  19. Transaction silently rolled back because it has been marked as rollback-only Spring事务嵌套问题
  20. 01 - Python 起源

热门文章

  1. 传统的方式写mybatis的应用程序
  2. 完美解决Python 发送邮件126,136,QQ等,都会报•554 DT:SPM 发送的邮件内容包含了未被许可的信息,或被系统识别为垃圾邮件。请检查是否有用户发送病毒或者垃圾邮件
  3. python中labels是什么意思_使用labels属性有什么优势吗?
  4. linux find命令 括号,Linux中find命令细节详解
  5. matlab 双均线,双均线策略
  6. html5均线图源码,通达信相当好的天机均线主图源码
  7. 摩尔斯密码输出I LOVE YOU ,SOS
  8. matlab 取虚数单位,四元数解算姿态Matlab程序代码
  9. Epicor ERP
  10. 中国近代史-蒋廷黻-笔记-第一章-剿夷与抚夷-第二节-英国人做鸦片买卖