json gson解析

"/data/data/cn.qihoo.msearch/skin/skin_color/header_color.json"
Gson gson = new Gson();
        SkinChangeJson result = null;
		try {
			BufferedReader br;
			File file = new File(res_json_path);
			br = new BufferedReader(new FileReader(file));
			result = gson.fromJson(br,SkinChangeJson.class
                    /*new TypeToken<SkinChangeJson>() {
                    }.getType()*/
            );
			Log.i("yyy","--------------result="+result.getNavi_version());
			return result;
		} catch (Exception e) {
			return null;
		}


解析内容:

{
	"multi": [
		{
			"postid": "1086040",                            
			"images": [
				"http://p0.qhimg.com/t016255b6700a3401ca.jpg",
				"http://p0.qhimg.com/t013f3cbb6273a22963.jpg",
				"http://p0.qhimg.com/t0114d9ab0c67809399.jpg"
			],
			"tag": "9"
		},
		{
			"postid": "1087757",                           
			"images": [
				"http://p0.qhimg.com/t01a6d8f4a52aff6afb.jpg",
				"http://p0.qhimg.com/t013ccf4cbcbc128cbc.jpg"
			]
		}
		],
	"common":{
			"postid": "1088242",			
			"images": [
				"http://p0.qhimg.com/t01cb5b2d309ff5fd57.jpg"
			],
			"tag": "5"			
		}
	}


json解析:

TopicData[] topicList = new TopicData[TOPIC_NUMBER];
JSONArray multiArray = dataObject.getJSONArray("multi");
for (int i = 0; i < TOPIC_NUMBER; i++) {
	topicJson = multiArray.getJSONObject(startIndex);
	TopicData topic = new TopicData();            
	topic.title = topicJson.optString("title");
	topic.sourceFrom = topicJson.optString("source");
	topic.commentNum = topicJson.optString("post_num");   
	topic.gotoUrl = topicJson.optString("gotourl");
	JSONArray imageArray = topicJson.getJSONArray("images");
	topic.imageDownloadUrl = new String[imageArray.length()];
	Log.i(TAG,"imageArray = "+imageArray.length());
	for(int j = 0; j < imageArray.length(); j++){
		String imageJson = imageArray.getString(j);   
		topic.imageDownloadUrl[j]=imageJson;
	}
	topicList[i] = topic;
}	

private class TopicData {
	String[] imageDownloadUrl;
	String title;
	String gotoUrl;
	String commentNum;
	String sourceFrom;
}

gson解析:

public class JsonDataBase{
        public ArrayList<CardTucaoData> getMulti() {
            return multi;
        }

        public void setMulti(ArrayList<CardTucaoData> multi) {
            this.multi = multi;
        }

        public ArrayList<CardTucaoData> getCommon() {
            return common;
        }

        public void setCommon(ArrayList<CardTucaoData> common) {
            this.common = common;
        }

        private ArrayList<CardTucaoData> multi;
        private ArrayList<CardTucaoData> common;
        
        public class CardTucaoData{
            public String getPostid() {
                return postid;
            }
            public void setPostid(String postid) {
                this.postid = postid;
            }          
            public String getTag() {
                return tag;
            }
            public void setTag(String tag) {
                this.tag = tag;
            }           
            public List<String> getImages() {
                return images;
            }
            public void setImages(List<String> images) {
                this.images = images;
            }
            private String postid = "";          
            private String tag = "";
            private List<String>  images;
        }
    }	
	
	public JsonDataBase parseCardTucaoJson(String CardTucaoStr) {
        Gson gson = new Gson();
        JsonDataBase base = null;
        try {
        	//CardTucaoStr = gson.toJson(rootObject);
         //   LogUtils.i("card", "rootString = " + rootString);
            if (!TextUtils.isEmpty(CardTucaoStr)) {
                base = gson.fromJson(CardTucaoStr, new TypeToken<JsonDataBase>() {
                }.getType());
                if (base != null)
                    return base;
            }
        } catch (JsonSyntaxException e) {
        }
        return null;
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值