wcstombs()的使用

转自:http://hi.baidu.com/ark803/blog/item/ea0c461b8e0f28d0ac6e7577.html [在此向原文作者说声谢谢!若有读者看到文章转载时请写该转载地址,不要写我的BLOG地址。尊重他人的劳动成果 ^_^ ]

 

今天遇到个编码转换的问题,需要把unicode编码转换为多字节(这里是GB),对函数wcstombs()的使用总是出问题,想起sunshine师兄写的关于多字节转unicode时对函数mbstowcs()的使用(wcstombs()函数的兄弟~),所以决定找unicode的代码页,但是只找到了UTF7和UTF8的代码页,无奈之下只好搜网上对wcstombs的使用了,发现wcstombs和mbstowcs的使用并不完全一样,在unicode到多字符的转换过程中,需要指明多字符的代码页,并不像我原来想的那样"需要指明前面一个一个字符集的代码页"。

使用如下:(unicode 到GB)

setlocale(LC_ALL, ".936");
wcstombs(char * to,wchar_t * from,size_t _maxCount);//

后来想想,多字节有很多种,而宽字节只有unicode,所以不论是从"宽"到"多"还是从"多"到"宽",需要指明的都是"多"。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值