美文网首页
gson有序的解析json数据

gson有序的解析json数据

作者: 程序猿isMe | 来源:发表于2017-04-08 15:30 被阅读0次

    首先引用gson库到程序中


    Gson的GitHub地址

    也可以直接使用

    compile 'com.google.code.gson:gson:2.8.0'
    

    目前最新的,请及时更新。。。


    好了不多说了,进入正题

    JsonObject object = (JsonObject) new JsonParser().parse(json);
    JsonObject body = object.getAsJsonObject("Body");
    

    这是将json数据直接转换成有序的JsonObject,之前试了fastjson,没有找到解决无序的问题(水平比较有限😭),尝试用了gson,果然还是gson比较好用😄


    到这里差不多就结束了,由于服务器返回的json是不固定的所以,并且显示时是key和value都需要的,所以,我将body转换成LinkedHashMap后在转换成List,保证解析是有序的

    String bodyJson = body.toString();
    List<DetailEntity> list = new ArrayList<>();
            Gson gson = new Gson();
            LinkedHashMap<String, String> map = gson.fromJson(bodyJson, new TypeToken<LinkedHashMap<String, String>>() {
            }.getType());
            
            Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
            while (it.hasNext()) {
                Map.Entry<String, String> entry = it.next();
                if (!"".equals(entry.getValue())) {
                    Entity entity = new Entity();
                    entity.mKey = entry.getKey();
                    entity.mValue = entry.getValue();
                    list.add(entity);
                }
            }
    

    相关文章

      网友评论

          本文标题:gson有序的解析json数据

          本文链接:https://www.haomeiwen.com/subject/sbvlattx.html