异常原因
使用Gson进行解析Json数据时可能会发生以下异常:
MalformedJsonException
该异常由于Json数据中存在一些不正常的字符(可能是多余的空白字符造成的);
解决方案
解决方案参考多个网络解决方案及个人亲测验证
使用JsonReader.setLenient(true);
针对不同的解析对象,有以下两种实现方式:
- 针对字符串
JsonReader reader = new JsonReader(new StringReader(jsonStr));
//设置为宽松的解析方式
reader.setLenient(true);
parser.parse(reader);
- 针对流
JsonReader reader=new JsonReader(new InputStreamReader(in));
reader.setLeninet(true);
parser.parse(reader);