Java解析Json格式資料的小總結

2021-08-17 17:31:08 字數 1350 閱讀 3862

注:以下的總結均是引入的jar包fastjson,例子:

string test=",]}}";
1.將string型別轉換為jsonobject物件

jsonobject object=json.parseobject("test");
獲取json資料內容,即,]}

jsonobject json = (jsonobject) object.get("respon");
2.最簡單的解析是json格式也為最簡單的key-value形式

此時只需json.getstring(key值),如獲取api,只需json.getstring(api);

3.但是很多json都是json陣列和json物件一起的,而且存在很多key值,此時我們需要解析時與實體類對應,因為會去填充相同名稱的屬性。注:在與實體類對應時,如果實體類中有的屬性而json字串沒有的,會預設為null,如果json字串中有而實體類中沒有的,不做處理。

①json物件的:使用jsonobject.parseobject

如首先建立乙個實體類apimodel,內含屬性api,首先獲取api的值:

string apistr=json.getstring("api");
與實體類對應:

apimodel a=jsonobject.parseobject(apistr,apimodel.class);
②json陣列的:使用jsonarray.parsearray(返回list)

如首先建立乙個實體類argsmodel,內含屬性獲取jsonarray陣列

jsonarray specialcatearray = json.getjsonarray("args");
與實體類對應:

listargslist=new arraylist();

argslist=jsonarray.parsearray(specialcatearray.tojsonstring(),argsmodel.class);

4.還有一種情況是,key和value值比較多,我們只想按照key-value的方式解析存表,或是不知道key值的情況,也就是單獨獲取json字串中的key值或value值

比如以上例子僅解析為args=[,],api=2.1

set> entryset=json.entryset();

for(entryentry:entryset)

注:此文章是本人學習的一點小筆記和總結,若發現有問題歡迎指出,謝謝~

java解析json格式資料

有時候可能會用到json格式進行資料的傳輸,那麼怎麼把接收到的資料解析出來呢?下面介紹兩種解析json資料的方法 1 通過谷歌的gson來進行解析 json資料 stotalstring 兩個vo類 public classsurveyvo public void setmessage string...

解析 JSON 格式資料

比起 xml,json的主要優勢在於它的體積更小,在網路上傳輸的時候可以更省流量。但缺點在於,它的語義性較差,看起來不如xml 直觀。我們還需要在c apache apache2 htdocs目錄中新建乙個 get data.json 的 檔案,然後編輯這個檔案,並加入如下 json 格式的內容 修...

解析json格式的資料

一 本程式是從客戶端傳送請求到伺服器,伺服器返回josn格式的資料,客戶端進行解析並展示。二 public class mainactivity extends activity private final static string path protected static final int ...