參考出處:
簡書liusj_0525---使用GSON框架解析json數(shù)據(jù) --- android
陳小默--- Android Studio配置與使用GSON框架解析json數(shù)據(jù)
在android studio中使用Gson來解析Json文件碴裙,主要分為四個(gè)步驟:
- 在Android Studio中添加GSON依賴 安裝Gson插件
- 編寫json文件
- 使用Gson插件生成Java Bean類
- 利用Java Bean解析數(shù)據(jù)
一、在Android Studio中添加GSON依賴 安裝Gson插件
在project下app找到build.gradle文件
在dependencies閉包中添加
compile'com.google.code.gson:gson:2.8.0'
PS:Github/GSON 版本號(hào)可在API中找到GSON-API
添加依賴
打開Preference選項(xiàng)->找到plugins
添加插件
點(diǎn)擊底部Browse repositories查找GsonFormat 點(diǎn)擊安裝并重啟
二点额、編寫Json文件
Json文件的具體格式可以去 JSON 教程學(xué)習(xí)
Json文件存放目錄為:src -> main(與java和res同級別目錄)下建立一個(gè)assets文件夾舔株。
Assets目錄創(chuàng)建方法:在目錄main右鍵 -> new -> Folder -> Assets Fodler。
下面在這里簡單寫一個(gè)Bean.json文件还棱,給大家參考:
這里有一點(diǎn)要叮囑大家载慈,因?yàn)槭抢肑son文件自動(dòng)生成類,所以在Json中诱贿,除了值以外娃肿,其他參數(shù)就不要使用中文了咕缎。當(dāng)然用中文也可以珠十,但是在這一步彈出的Json文件模型中需要自己重新去改屬性名料扰,并且是改成英文的。為了方便大家看Json文件層次焙蹭,我們這里寫的example使用中文
{
"長春市中學(xué)":
[
{
"學(xué)校名稱": "吉大附中",
"ID": "sch_001",
"學(xué)校部門":
[
{
"部門名稱": "財(cái)務(wù)部",
"部門標(biāo)號(hào)":"bm_001"
},
{
"部門名稱": "事業(yè)部",
"部門標(biāo)號(hào)":"bm_002"
}
]
},
{
"學(xué)校名稱":"師大附中",
"ID": "sch_002",
"學(xué)校部門":
[
{
"部門名稱": "財(cái)務(wù)部",
"部門標(biāo)號(hào)":"bm_001"
},
{
"部門名稱": "人力資源部",
"部門標(biāo)號(hào)":"bm_003"
}
]
}
]
}
三晒杈、使用Gson插件生成Java Bean類
-
在你的project -> app -> main -> java 下創(chuàng)建一個(gè)bean包
-
包下創(chuàng)建一個(gè)名為JsonBean的類(名字由自己需求可以改動(dòng))
-
創(chuàng)建完畢,進(jìn)入JsonBean孔厉,在類內(nèi)點(diǎn)擊右鍵拯钻,選擇Generate.( Mac快捷鍵:CMD + N)
-
選擇GsonFormat,再將剛才編寫的Json文件信息粘貼到彈出框中撰豺,點(diǎn)擊OK會(huì)自動(dòng)創(chuàng)建Json文件模型
-
修改好你的模型后粪般,點(diǎn)擊OK,一個(gè)Bean類就被創(chuàng)建出來了
四污桦、利用Java Bean解析數(shù)據(jù)
解析數(shù)據(jù)非常簡單亩歹,兩行代碼搞定:
InputStream inputStream = getApplicationContext().getAssets().open("Bean.json");
jsonBean = new GsonBuilder().create().fromJson(new InputStreamReader(inputStream), JsonBean.class);