說起JSON,大家就談不上陌生了,因為對于數(shù)據(jù)傳輸語言,各位只認(rèn)json,即使有XML語言,但是各位很少用吧。我也是,但是之前用過的json轉(zhuǎn)換工具各種各樣,我記憶中有過GSON(google)、fastJSON(阿里巴巴)、jsonlib等等。但是這次使用的JSONObject,我只是臨時抱佛腳,為什么這樣說?因為這次我是被逼著吃透了它處理對象和json、普通字符串和json之間的相互轉(zhuǎn)化。
最近在公司主要做接口開發(fā),主要是通過和第三方機(jī)構(gòu)聯(lián)合開發(fā)接口,難免存在數(shù)據(jù)的共享和處理,大致需求就是我們調(diào)用第三方接口,他們的接口返回給我們一定格式的json數(shù)據(jù),最后我們后臺開發(fā)將數(shù)據(jù)處理成我們這邊APP端所需的數(shù)據(jù)。因為公司使用的json工具是JSONObject,我只是熟悉(以前沒怎么用過),但是內(nèi)部的數(shù)據(jù)結(jié)構(gòu)詳細(xì)是如何及解析并處理成我們自己的數(shù)據(jù)的,我真的是懵著腦袋挺了2天,實在是難受,于是決定好好鉆研一下,立馬搭建個工程搞了起來。
需求一:調(diào)用第三方接口返回json字符串,我們自己處理成所需格式的json數(shù)據(jù)?
首先調(diào)用第三方接口返回的json字符串格式如下:
1 data="{"status":"查詢成功","data":{"total":143,"list":[{"exceptionnum":"28","areacn":"余杭區(qū)","areaid":"330110000000000000","comnum":"150"},{"exceptionnum":"22","areacn":"拱墅區(qū)","areaid":"330105000000000000","comnum":"97"},{"exceptionnum":"22","areacn":"蕭山區(qū)","areaid":"330109000000000000","comnum":"178"},......]},"code":"1"}"
其次我們需要處理成我們自己的json數(shù)據(jù)。首先呢就是需要將字符串?dāng)?shù)據(jù)轉(zhuǎn)成JSONObject對象后,才可以調(diào)用它的一系列API方法來處理。
網(wǎng)友評論