这是一个数据示例,可能 应该 已经序列化为数组,但是没有被序列化。解析它的一种解决方案是
JSONObject直接利用Direct。
String json = ...;final Gson gson = new Gson();final List<Attachment> attachements = new ArrayList<Attachment>(64);final JSonObject jsonObj = new JSonObject(json).getJSonObject("attachments");final Iterator<String> keys = jsonObj.keys();while(keys.hasNext()) { final String key = keys.next(); attachements.add(gson.fromJson(jsonObj.getJSonObject(key).toString(), Attachment.class);}// Do something with attachements该数据 可 也被看作是一个地图,ID的对附件。可以这样反序列化:
final String jsonObj = new JSonObject(json).getJSonObject("attachments");final Gson gson = new Gson();final Map<String, Attachment> data = gson.fromJson(jsonObj.toString(), new TypeToken<Map<String, Attachment>>() { }.getType());final List<Attachment> attachments = new ArrayList<Attachment>(data.values());这是实际的



