jsoup解析出现非常规乱码后处理方法

碰到怪问题jsoup解析在ECLIPSE调试环境正常,放到TOMCAT上独立跑时JSOUP解析出现怪字符,后来发现是byte 63,用replaceall无法解决,后写了下面这个函数处理,问题虽解决但为何会出现乱码尚不清楚。 UTF-8是3个字节 GBK是2个字节 常用中文字符用utf-8编码占用3个字节(大约2万多字),但超大字符集中的更大多数汉字要占4个字节(在unicode编码体系中,U+20000开始有5万多汉字)。 GBK、GB2312收编的汉字占2个字节,严格地用iso8859-1无法表示汉字,只能转为问号。 public String reStringByte(String tmpsStr,int reInt) { byte[] tmp=tmpsStr.getBytes(); int p=0; for (int i = 0; i < tmp.length; i++) { if (tmp[i]!=reInt){ p=p+1; } } byte[] stmp=new byte[p]; p=0; for (int i = 0; i < tmp.length; i++) { if (tmp[i]!=63){ stmp[p]=tmp[i]; p=p+1; } } try { log.info("字节差:"+(tmp.length-stmp.length)); } catch (Exception e) { } return new String(stmp); }

转载于:https://my.oschina.net/realmatrix/blog/535912

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值