Android获取assets文件夹下的json数据,并Gson解析!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyc088456/article/details/80239043

Json 数据如下

{
    "code": 200,
    "msg": "ok",
    "news": [
        {
            "title": "空降美国的孩子",
            "content": "在压力和青春期的情绪波动之中,他们经历着不一样的高中岁月。",
            "imageUrl": "http://img1.gtimg.com/ninja/2/2018/02/ninja151798030871223.jpg"
           
        },
        {
            "title": "中国人的一天",
            "content": "男子独守羌王府,村庄成景区,靠景点旅游收入,养活全村孤寡老人",
            "imageUrl": "http://img1.gtimg.com/news/pics/hv1/119/227/2274/147924854.jpg"

        },
        {
            "title": "霍金的三次中国之行",
            "content": "霍金与中国的缘分不浅,他曾3次来华。",
            "imageUrl": "http://img1.gtimg.com/ninja/1/2018/03/ninja152102147694339.jpg"

        },
        {
            "title": "一位英国人留给贵州苗族的遗产",
            "content": "从原始苗寨到 “ 文化圣地 ” ,石门坎所经历的一切,全因一位外国人的到来和时代巨变。",
            "imageUrl": "http://img1.gtimg.com/ninja/1/2018/03/ninja152161950735699.jpg"

        },
        {
            "title": "中国女摄影师镜头下的叙利亚",
            "content": "人间若有天堂,大马士革必在其中。",
            "imageUrl": "http://img1.gtimg.com/ninja/1/2018/04/ninja152414932060578.jpg"

        },
        {
            "title": "震后十年,田埂上那姑娘从未跑远",
            "content": "后来我去了大学,她留在了地震博物馆",
            "imageUrl": "http://img1.gtimg.com/news/pics/hv1/174/161/2274/147908079.jpg"

        }
    ]
}

解析 

news.json是文件名字,另外需要两个实体类,根据数据格式自行创建。

StringBuilder newstringBuilder = new StringBuilder();
InputStream inputStream = null;
try {
    inputStream = getResources().getAssets().open("news.json");
    InputStreamReader isr = new InputStreamReader(inputStream);
    BufferedReader reader = new BufferedReader(isr);
    String jsonLine;
    while ((jsonLine = reader.readLine()) != null) {
        newstringBuilder.append(jsonLine);
    }
    reader.close();
    isr.close();
    inputStream.close();
} catch (IOException e) {
    e.printStackTrace();
}

String result =  newstringBuilder .toString();
Log.d("json",result);
Gson gson = new Gson();
Common common = gson.fromJson(result, Common.class);
newlist=common.getNews();



阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页