iconv忽略不可识别字符

网上抓来的代码经常需要进行码制转换,问题是经常出现特殊字符造成 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;





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值