解析json数据

下面直接上代码。

模型类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");
		// FIXME
		final 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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值