如果一个Model对象是这样的
数据格式如下:
{
"c":"123",
"d":"wdew",
"e":"dewdw",
"b":""
}
new Gson().fromJson(data, A.class);
那么这个时候使用谷歌提供的GSON去解析将会出现如下错误:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 5 column 11 path $.b
数据格式中b,对应的是一个字段,但是数据格式里面对应的确实一个Model,所以就报错了,有些时候,就非常恼火了,有些时候服务器不可能会按照争取的格式反馈给我们。所以我就对上述的问题,重新写了一段代码,也就是使用了谷歌的GSON的一些工具类,然后写了解析代码,最后重新封装了GSON。
new MyGson().fromJson(data, A.class);
代码可以下载:
https://github.com/youjiannuo/GSON/blob/master/README.md