#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互转
最新推荐文章于 2020-07-28 14:30:05 发布