开发的公众号报看到莫名其妙的错误 如下
看日志说 解析 xml 数据时出现 0x1a 异常,但是项目中没有 xml 呀 ,再看之前的日志,就会发现公众号接受的数据有问题,如下
项目代码中确实有将接收的数据进行转换 如下
解决:在转换之前 将字符串中的 0x1a 进行替换。使用下面方法;
private String stripNonValidXMLCharacters(String in) { if (in == null || ("".equals(in))) return null; StringBuffer out = new StringBuffer(in); for (int i = 0; i < out.length(); i++) { if(out.charAt(i) == 0x1a) { out.setCharAt(i, '-'); } } return out.toString(); }