Android程序从服务器获取到一段JSON数据。
不知道为什么我手机用路由连上网的时候,JSON数据末尾会有一个标签。<br> 然后程序闪退了。<br> 用流量上网的时候不会出现,能正常解析。<br> 用户不会希望看到程序闪退吧。我想问问大家解析JSON的时候都会怎么处理这种错误。<br> 莫名其妙的错误。。。</p>
表示没遇到过的你这样的情况,如果确定是由于
标签导致的错误,可在解析之前replace一下
如果你肯定他只会出现
标签,可以在解析之前使用字符串替换,把
标签删除掉。
String fixedJson=jsonString.replace("<br>","");
如果不确定会出现什么导致JSON语法错误的,建议使用`try...catch'代码块将解析JSON的代码包起来。这样解析会出现错误,但不会崩溃退出。
MyEntity entity=new Gson().fromJson(jsonString,MyEntity.class);
另外,JSON解析推荐你使用谷歌的GSON库,解析更加方便:
GSON简要使用笔记
Java的JSON类库GSON
格式不正确的Json也能解析吗?
把JSON字符串split("有用信息的尾巴+1的字符")[0]