国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Linux服務器 > 正文

Linux下實現UTF-8和GB2312互相轉換的方法

2024-09-05 23:03:18
字體:
來源:轉載
供稿:網友

實例如下:

#include<iconv.h> #include <stdio.h>#include<iconv.h>using namespace std;int utf8togb2312(const char *sourcebuf,size_t sourcelen,char *destbuf,size_t destlen) { iconv_t cd; if( (cd = iconv_open("gb2312","utf-8")) ==0 )    return -1; memset(destbuf,0,destlen); const char **source = &sourcebuf; char **dest = &destbuf;if(-1 == iconv(cd,source,&sourcelen,dest,&destlen))    return -1; iconv_close(cd); return 0; }int gb2312toutf8(const char *sourcebuf,size_t sourcelen,char *destbuf,size_t destlen) { iconv_t cd; if( (cd = iconv_open("utf-8","gb2312")) ==0 )  return -1; memset(destbuf,0,destlen); const char **source = &sourcebuf; char **dest = &destbuf; if(-1 == iconv(cd,source,&sourcelen,dest,&destlen))  return -1; iconv_close(cd); return 0; }int main() { char line[80]; char dest_gb2312[200]; char dest_utf8[200]; int ret ; FILE *fp = fopen("love.txt","r"); if(fp == NULL) {  printf("oh my dear,open fail.../n");  return 1; } memset(line,0,80); if( NULL == fgets(line,80,fp)) {  printf("oh fgets fail.../n");  return 2; }printf( "----- :%s/n",line );ret = gb2312toutf8(line,strlen(line),dest_gb2312,200); // ret = gb2312toutf8(dest_gb2312,strlen(dest_gb2312),dest_utf8,80); printf( "ret=%d/n/n/n",ret); printf( "gb2312:%s/n",line ); printf( " utf-8:%s/n/n/n/n/n/n", dest_gb2312 ); ret = utf8togb2312(dest_gb2312,strlen(dest_gb2312),dest_utf8,200); printf( "ret=%d/n/n/n ",ret); printf( " utf-8:%s/n ",dest_gb2312); printf( "gb2312:%s/n ",dest_utf8); return 0;}

以上就是小編為大家?guī)淼腖inux下實現UTF-8和GB2312互相轉換的方法全部內容了,希望大家多多支持VEVB武林網~

 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 深水埗区| 扶沟县| 潍坊市| 微博| 库伦旗| 天长市| 玉林市| 海盐县| 驻马店市| 东乡族自治县| 谷城县| 奉节县| 虞城县| 康乐县| 木里| 衡东县| 孝义市| 千阳县| 凤台县| 前郭尔| 井冈山市| 巴马| 平顶山市| 清远市| 屏山县| 阜康市| 正镶白旗| 海伦市| 汉寿县| 长宁区| 仙游县| 建德市| 金塔县| 琼海市| 修水县| 古浪县| 化隆| 汾西县| 黄浦区| 肇东市| 绍兴县|