gson的动态解析json

看json

{li:{"temperature":"15","weather":"多云转晴","wind":"东北风微风","week":"星期日","date":"20151011"}}

当你遇到其中date要是后面跟的类型多变怎么办呢?还要写一个解析类?不用

/**
 * 项目名称:Demo1
 * 类描述:
 * 创建人:Administrator
 * 创建时间:2017/2/16 14:54
 * 修改人:Administrator
 * 修改时间:2017/2/16 14:54
 * 修改备注:
 * 联系方式:906514731@qq.com
 */
public class TestEnty {
    Map<String,Object> li;
}

package com.Company.Demo;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import com.google.gson.Gson;
import java.util.Map;

public class MainActivity extends AppCompatActivity {
    private String json = "{li:{\"temperature\":\"15\",\"weather\":\"多云转晴\",\"wind\":\"东北风微风\",\"week\":\"星期日\",\"date\":\"20151011\"}}";


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Gson gson = new Gson();
        TestEnty testEnty = gson.fromJson(json, TestEnty.class);
        Map<String, Object> li = testEnty.li;

        for (String key : li.keySet()) {                        //遍历取出key,再遍历map取出value。
            Log.e("key", key);
            Log.e("li.get(key).toString()", li.get(key).toString());
        }


    }
}


Paste_Image.png

这个取出的类型自己去判断什么类型然后转成自己需要的类型就行啦!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,408评论 25 709
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,931评论 18 399
  • 记得喜欢的一个作者说过类似这样的话:你说过的话,做过的事,读过的书,用过的物件,生活的环境,共同构筑成了你本身。生...
    橘子的买买买心得阅读 3,203评论 0 5
  • 好久没有跟主任一起上手术了,今天主任的专属助手有事不能跟手术了,只有让我跟着去操作彩超机器,护士长做助手,我在旁边...
    超声介入小生一枚阅读 1,475评论 0 0
  • 沐一缕清风 入一片竹林 闻一声雀鸣 饮一壶老酒 舞一阵长剑 我醉了 酒温着 你归来否
    简单王檬阅读 1,111评论 0 31