vc中字符编码转换

一直用php开发,在php开发用字符编码转换很简单只要用iconv函数就可以实现,最近的项目要把vc的数据提交给php处理,在返回给vc结果, 问题来了,vc项目的编码是GB2312,而PHP程序是utf-8编码,导致数据乱码。 看到乱码第一感觉就是编码问题了。 vc中有像iconv这样的函数吗?查msdn没有。恩,看来还是php好用啊。不亏是我喜欢的语言。 vc中怎么实现呢?要utf8->gb2312谷歌到的结果是,要先把utf8转换为unicode编码,在把unicode转换成GB2312。也就是utf8 ->unicode ->gb2312这个过程。 如果要从Gb2312->utf8呢,就类似上面那样了,也就是gb2312->unicode ->utf-8这个过程。至于为什么要先转换成unicode编码呢?我自己也还不清楚。可能和什么是 utf8,gb2312编码有关吧,这里有变文章介绍这些编码。http://www.linuxforum.net/books/UTF-8-Unicode.html 好了看看vc中是怎么实现utf8到unicode编码的。可以用这个函数MultiByteToWideChar() 从unicode到gb2312是用WideCharToMultiByte()这个函数。 我把它写成了一个iconv()函数参数和php的一样下面是代码。

Code

posted @ 2009-09-16 22:25  phpzxh  阅读(1797)  评论(0编辑  收藏  举报