解析json数据

来源:互联网 发布:odn无源分配网络包括 编辑:程序博客网 时间:2024/06/15 07:47

下面直接上代码。

模型类Content

package com.example.zhihudaily.model;import java.util.ArrayList;import java.util.List;import org.json.JSONArray;import org.json.JSONObject;public class Content {public final String body;public final String image_source;public final String title;public final String url;public final String image;public final String share_url;public final int id;public final String ga_prefix;public final List<Object> js;public final String thumbnail;public final List<String> css;private Content(String body, String image_source, String title, String url,String image, String share_url, int id, String ga_prefix,List<Object> js, String thumbnail, List<String> css) {this.body = body;this.image_source = image_source;this.title = title;this.url = url;this.image = image;this.share_url = share_url;this.id = id;this.ga_prefix = ga_prefix;this.js = js;this.thumbnail = thumbnail;this.css = css;}public static Content getContent(JSONObject obj) {final String body = obj.optString("body");final String image_source = obj.optString("image_source");final String title = obj.optString("title");final String url = obj.optString("url");final String image = obj.optString("image");final String share_url = obj.optString("share_url");final int id = obj.optInt("id");final String ga_prefix = obj.optString("ga_prefix");// FIXMEfinal List<Object> js = new ArrayList<Object>();final String thumbnail = obj.optString("thumbnail");final List<String> css = new ArrayList<String>();JSONArray cssArray = obj.optJSONArray("css");for (int i = 0, length = cssArray.length(); i < length; i++) {css.add(cssArray.optString(i));}return new Content(body, image_source, title, url, image, share_url,id, ga_prefix, js, thumbnail, css);}}

下面是模拟下载下来数据然后解析json。

例如下载下来的字符串为String josn="cxxxxxxx";

json转成成模型类:

Content content = Content.getContent(new JSONObject(json));



对象用JsonObject

数组用JsonArray

0 0