Chinaunix首页 | 论坛 | 博客
  • 博客访问: 943372
  • 博文数量: 58
  • 博客积分: 10192
  • 博客等级: 上将
  • 技术积分: 1845
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-22 21:24
文章分类

全部博文(58)

文章存档

2011年(11)

2010年(12)

2009年(20)

2008年(15)

分类: C/C++

2008-03-02 16:51:51

/*** gb2312 convert utf-8 ***/
 
#include
#include
#include
#include
 
int convertcode(char *inbuf,int inlen,char *outbuf,int outlen);
 
int main(void)
{
        int len1,len2=20;
      
        char *apin="我爱你";

        len1=strlen(apin);

        char apout[len2];
 
        convertcode(apin,len1,apout,len2);
 
        printf("the utf-8 is %s\n",apout);
 
        return 0;
}
 
int convertcode(char *inbuf,int inlen,char *outbuf,int outlen)
{
        iconv_t handle;
 
        char **pin=&inbuf;
 
        char **pout=&outbuf;
 
        handle=iconv_open("utf-8","gb2312");
 
        if( handle == 0 )
                printf("error!\n");
 
        memset(outbuf,0,outlen);
 
        if(iconv(handle,pin,(size_t *)&inlen,pout,(size_t *)&outlen) == -1){
                printf("iconv error!\n");
                return -1;
        }
 
        iconv_close(handle);
 
        return 0;
}
阅读(2441) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~