全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C++宽字符与普通字符的转换实例详解

C++宽字符与普通字符的转换实例详解

把字符串转换成宽字符串,

实例代码:

wstring string2Wstring(string sToMatch) 
{   
#ifdef _A_WIN 
  int iWLen = MultiByteToWideChar( CP_ACP, 0, sToMatch.c_str(), sToMatch.size(), 0, 0 ); // 计算转换后宽字符串的长度。(不包含字符串结束符) 
  wchar_t *lpwsz = new wchar_t [iWLen + 1]; 
  MultiByteToWideChar( CP_ACP, 0, sToMatch.c_str(), sToMatch.size(), lpwsz, iWLen ); // 正式转换。 
  lpwsz[iWLen] = L'/0';  
  wstring wsToMatch(lpwsz); 
  delete []lpwsz; 
#elif _A_LINUX 
  setlocale( LC_CTYPE, "" ); // 很重要,没有这一句,转换会失败。 
  int iWLen = mbstowcs( NULL, sToMatch.c_str(), sToMatch.length() ); // 计算转换后宽字符串的长度。(不包含字符串结束符) 
  wchar_t *lpwsz = new wchar_t[iWLen + 1]; 
  int i = mbstowcs( lpwsz, sToMatch.c_str(), sToMatch.length() ); // 转换。(转换后的字符串有结束符) 
  wstring wsToMatch(lpwsz); 
  delete []lpwsz; 
#endif 
  return wsToMatch; 
} 
//把宽字符串转换成字符串,输出使用 
string wstring2string(wstring sToMatch) 
{   
#ifdef _A_WIN 
  string sResult; 
  int iLen = WideCharToMultiByte( CP_ACP, NULL, sToMatch.c_str(), -1, NULL, 0, NULL, FALSE ); // 计算转换后字符串的长度。(包含字符串结束符) 
  char *lpsz = new char[iLen]; 
  WideCharToMultiByte( CP_OEMCP, NULL, sToMatch.c_str(), -1, lpsz, iLen, NULL, FALSE); // 正式转换。 
  sResult.assign( lpsz, iLen - 1 ); // 对string对象进行赋值。 
  delete []lpsz; 
#elif _A_LINUX 
  int iLen = wcstombs( NULL, sToMatch.c_str(), 0 ); // 计算转换后字符串的长度。(不包含字符串结束符) 
  char *lpsz = new char[iLen + 1]; 
  int i = wcstombs( lpsz, sToMatch.c_str(), iLen ); // 转换。(没有结束符) 
  lpsz[iLen] = '/0'; 
  string sResult(lpsz); 
  delete []lpsz; 
#endif 
  return sResult; 
} 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C++宽字符与普通字符的转换  # C++宽字符与普通字符  # C++ 字符串去重排序实例代码  # 浅谈c++ 字符类型总结区别wchar_t  # char  # WCHAR  # C++中输出十六进制形式的字符串  # c++中数字与字符串之间的转换方法(推荐)  # C++统计中英文大小写字母、数字、空格及其他字符个数的方法  # C++实现从输入中读取字符串  # C++计算每个字符出现的次数  # 不包含  # 转换成  # 这一  # 希望能  # 很重要  # 谢谢大家  # iWLen  # int  # MultiByteToWideChar  # wchar_t  # lpwsz  # size  # CP_ACP  # c_str  # brush  # cpp  # class  # strong  # pre  # wstring 


相关文章: 小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  广东专业制作网站有哪些,广东省能源集团有限公司官网?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  如何快速生成可下载的建站源码工具?  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  制作网站的软件免费下载,免费制作app哪个平台好?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  如何快速搭建响应式可视化网站?  如何设计高效校园网站?  c++ stringstream用法详解_c++字符串与数字转换利器  建站之星在线版空间:自助建站+智能模板一键生成方案  如何解决VPS建站LNMP环境配置常见问题?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  如何在IIS7中新建站点?详细步骤解析  建站之星微信建站一键生成小程序+多端营销系统  如何使用Golang安装API文档生成工具_快速生成接口文档  专业公司网站制作公司,用什么语言做企业网站比较好?  建站OpenVZ教程与优化策略:配置指南与性能提升  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化  如何快速生成专业多端适配建站电话?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  如何快速建站并高效导出源代码?  在线制作视频的网站有哪些,电脑如何制作视频短片?  宝塔新建站点为何无法访问?如何排查?  如何做静态网页,sublimetext3.0制作静态网页?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  长沙企业网站制作哪家好,长沙水业集团官方网站?  中山网站制作网页,中山新生登记系统登记流程?  建站之星多图banner生成与模板自定义指南  全景视频制作网站有哪些,全景图怎么做成网页?  建站之星如何快速生成多端适配网站?  贸易公司网站制作流程,出口贸易网站设计怎么做?  如何通过PHP快速构建高效问答网站功能?  建站之星ASP如何实现CMS高效搭建与安全管理?  公司网站制作价格怎么算,公司办个官网需要多少钱?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  建站主机如何安装配置?新手必看操作指南  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  建站主机选购指南:核心配置优化与品牌推荐方案  如何快速搭建高效香港服务器网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。