字符集转换: Ansi - Unicode

    字符集转换: Ansi - Unicode

 1 wstring AnsiToUnicode (const string& strSrc )
 2 {
 3     /*!< 分配目标空间 */
 4     int iAllocSize = MultiByteToWideChar(CP_ACP,0,strSrc.c_str(),-1,NULL,NULL);
 5     WCHAR* pwszBuffer = new WCHAR[ (UINT)iAllocSize ];
 6     if ( NULL == pwszBuffer )
 7     {
 8         return L"";
 9     }    
10     int iCharsRet = MultiByteToWideChar( CP_ACP, 0, strSrc.c_str(),-1,pwszBuffer, iAllocSize );
11     /*!< 成功 */
12     wstring wstrRet;
13     if ( 0 < iCharsRet )
14     {
15         (void)wstrRet.assign ( pwszBuffer, static_cast<size_t>( iCharsRet ) );
16     }
17 
18     /*!< 释放内存 */
19     delete[] pwszBuffer;
20 
21     return wstrRet;
22 }

 

转载于:https://www.cnblogs.com/hwm520hlf1314/p/3457009.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值