#include <iostream>
#include <stdio.h>
#include <iconv.h>
int code_convert( bool uft2gbk, char *inbuf, int inlen, char *outbuf, int outlen )
{
iconv_t cd;
int rc;
char **pin = &inbuf;
char **pout = &outbuf;
if ( uft2gbk )
cd = iconv_open( "utf-8", "gb2312" );
else
cd = iconv_open( "gb2312", "utf-8" );
if (cd==0) return -1;
memset(outbuf,0,outlen);
if (iconv(cd,pin,&inlen,pout,&outlen)==-1) return -1;
iconv_close(cd);
return 0;
}
int _tmain(void)
{
char* chaUni = "你好!";
char out[255];
int rec ;
//gb2312码转为unicode码
rec = code_convert( true, chaUni ,strlen(chaUni ),out,255);
printf("gb2312-->unicode out=%s\n",out);
printf("hello! 你好! \n");
return 0;
}
Unicode与GB2312互转
UTF-8到GB2312编码转换示例
最新推荐文章于 2020-07-28 14:30:05 发布
本文展示了一个简单的C++程序,用于实现UTF-8到GB2312编码的字符串转换。通过使用iconv库,程序能够将输入的UTF-8编码的字符串转换为GB2312编码,并打印转换后的结果。
2021

被折叠的 条评论
为什么被折叠?



