iconv忽略不可识别字符

来源:互联网 发布:2016最新网络词汇 编辑:程序博客网 时间:2024/06/05 02:34

网上抓来的代码经常需要进行码制转换,问题是经常出现特殊字符造成 iconv转换的失败. 其实可以忽略掉特殊字符.其实在目标编码的后面加上 //IGNORE 就可以忽略掉未知字符.

另外还有//TRANSLATE ,将把不认识的字符自动转换为相近的字符

  

iconv_t cd = iconv_open("utf-8//IGNORE","gbk") ;if((int)cd == -1)return;const char * inbuf = "class=c01>房产大家谈</td></tr>>";size_t inlen = strlen(inbuf);char * buf = new char [1024];char * outbuf = buf;memset(outbuf,0,1024);size_t outbytesleft = 1024;size_t st = iconv(cd,&inbuf,&inlen,&outbuf,&outbytesleft);delete buf;





原创粉丝点击