VC下utf8到UNICODE的编码转换

void utf8tow(wchar_t *pwstr,size_t len,const char *str)
{
        if(str)
    {
              size_t nu = strlen(str);
              size_t n =(size_t)MultiByteToWideChar(CP_UTF8,0,( const char *)str,(int )nu,NULL,0);
               if(n>=len)    n=len-1;
              MultiByteToWideChar(CP_UTF8,0,( const char *)str,(int )nu,pwstr,(int)n);
              pwstr[n]=0;
    }
}
三个参数分别代表:输出wchar_t字符串,输入字符串长度,输入字符串
以上这个函数经过测试稳定正确。把两处MultiByteToWideChar的第一个参数改为 CP_ACP就可以实现ANSI到UNICODE的转换
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值