package Ġcom . example . tools Ċ Ċ import Ġorg . json . JSONObject Ċ import Ġorg . json . JSONArray Ċ import Ġorg . json . JSONException ĊĊĊ Ċ class ĠJson Tools Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠçĶŁæĪĲ JSONObject ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Str ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġgenerate Json Obj ( json Str : ĠString ): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġjson Str Ġ= Ġjson Str ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠjsonObject = ĠJSONObject () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! json Str . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstart Ġ= Ġjson Str . indexOf ("{ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġend Ġ= Ġjson Str . lastIndexOf (" }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjson Str Ġ= Ġjson Str . substring ( start , Ġend Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject Ġ= ĠJSONObject ( json Str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠjsonObject ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠçĶŁæĪĲ JSONArray ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Str ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġgenerate Json Arr ( json Str : ĠString ): ĠJSONArray Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġjson Str Ġ= Ġjson Str ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠjsonObject Ġ= ĠJSONArray () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! json Str . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstart Ġ= Ġjson Str . indexOf ("[ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġend Ġ= Ġjson Str . lastIndexOf (" ]") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjson Str Ġ= Ġjson Str . substring ( start , Ġend Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject Ġ= ĠJSONArray ( json Str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠjsonObject ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġèİ·åıĸ Json çļĦ String å±ŀæĢ§ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġobject ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġkey ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Json String (` object `: ĠJSONObject , Ġkey : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġvalue Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( contain (` object `, Ġkey )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ` object `. getString ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠåĪ¤æĸŃ JSON åĮħåĲ« æĮĩå®ļ KEY ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġkey ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġcontain ( json : ĠJSONObject , Ġkey : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġjson . has ( key ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ Map éĽĨåĲĪ è½¬æį¢ æĪĲ JSON O ject ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġmap ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠJSONObject ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġswap Map To JSONObject ( map : ĠMap < String , ĠAny >): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġobj Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġiter Ġ= Ġmap . keys . iterator () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( iter . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkey Ġ= Ġiter . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobj . put ( key , Ġif Ġ( map [ key ] Ġ!= Ġnull ) Ġmap [ key ]. toString () Ġelse Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠJSON Exception ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobj ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ ä¸Ģä¸ª JSONObject å¯¹è±¡ è½¬æį¢ ä¸º ä¸Ģä¸ª HashMap ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Obj ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠMap ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġswap Json ToMap ( json Obj : ĠJSONObject ?): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmap Ġ= ĠHashMap < String , ĠAny >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( json Obj Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkeys Ġ= Ġjson Obj . keys () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( keys . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkey Ġ= Ġkeys . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap [ key ] Ġ= Ġget Json String ( json Obj , Ġkey ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġmap ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ ä¸Ģä¸ª value æĶ¾ è¿Ľ JSONObject ä¸Ń ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġput ( json Obj : ĠJSONObject , Ġkey : ĠString , Ġvalue : ĠAny ): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjson Obj . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠJSON Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġjson Obj ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Obj ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġkey ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget JsonObject ( json Obj : ĠJSONObject , Ġkey : ĠString ): ĠJSONObject ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġjson : ĠJSONObject ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjson Ġ= Ġjson Obj . getJSONObject ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠJSON Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġjson ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ ä¸Ģä¸ª JSONArray å¯¹è±¡ è½¬æį¢ ä¸º ä¸Ģä¸ª ArrayList < HashMap ></ HashMap >< String ></ String >, ĠObject >> éĽĨåĲĪ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Arr ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparser Json Arr ToMap List ( json Arr : ĠJSONArray ): ĠList < Map < String , ĠAny >> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġarray List Ġ= ĠArrayList < Map < String , ĠAny >>() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġjson Arr . length ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarray List . add ( parser Json ToMap ( json Arr . getJSONObject ( i ))) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠJSON Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġarray List ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ ä¸Ģä¸ª json Arr Str åŃĹç¬¦ä¸² è½¬æį¢ ä¸º ä¸Ģä¸ª ArrayList < HashMap ></ HashMap >< String ></ String >, ĠObject >> éĽĨåĲĪ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Arr Str ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparser Json Arr ToMap List ( json Arr Str : ĠString ): ĠList < Map < String , ĠAny >> ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġarray List : ĠList < Map < String , ĠAny >> ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarray List Ġ= Ġparser Json Arr ToMap List ( parse JsonArray ( json Arr Str )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġarray List ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ Map éĽĨåĲĪ è½¬æį¢ æĪĲ JSON O ject ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġ Ġmap ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠJSONObject ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparser Map To JSONObject ( map : ĠMap < String , ĠAny >): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġobj Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġiter Ġ= Ġmap . keys . iterator () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( iter . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkey Ġ= Ġiter . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobj . put ( key , Ġif Ġ( map [ key ] Ġ!= Ġnull ) Ġmap [ key ]. toString () Ġelse Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠJSON Exception ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobj ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠçĶŁæĪĲ JSONArray ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Str ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparse JsonArray ( json Str : ĠString ): ĠJSONArray Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġjson Str Ġ= Ġjson Str ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠjsonObject Ġ= ĠJSONArray () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! json Str . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġindex Ġ= Ġjson Str . indexOf ("[ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġend Ġ= Ġjson Str . lastIndexOf (" ]") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjson Str Ġ= Ġjson Str . substring ( index , Ġend Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject Ġ= ĠJSONArray ( json Str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠjsonObject ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ List Ġ è½¬æį¢ æĪĲ JSONArray ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġ Ġlist Map ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠJSONArray ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparse List To JSONArray ( list Map : ĠList < Map < String , ĠAny >> ): ĠJSONArray Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġarray Ġ= ĠJSONArray () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġlist Map . indices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmap Ġ= Ġlist Map [ i ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠjsonObject Ġ= Ġparser Map To JSONObject ( map ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarray . put ( jsonObject ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġarray ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġå°Ĩ ä¸Ģä¸ª JSONObject å¯¹è±¡ è½¬æį¢ ä¸º ä¸Ģä¸ª HashMap ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Obj ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġparser Json ToMap ( json Obj : ĠJSONObject ?): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparams Ġ= ĠHashMap < String , ĠAny >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( json Obj Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkeys Ġ= Ġjson Obj . keys () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( keys . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkey t Ġ= Ġkeys . next () Ġas ĠString ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparams [ key t ] Ġ= Ġget Json String ( json Obj , Ġkey t ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġparams ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġä»İ json å¯¹è±¡ ä¸Ń åıĸ json æķ°ç»Ħ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġjson Obj ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġkey ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget J Arr From J Obj ( json Obj : ĠJSONObject , Ġkey : ĠString ): ĠJSONArray ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġarr : ĠJSONArray ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarr Ġ= Ġjson Obj . get JSONArray ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġarr ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġä»İ json arr æķ°ç»Ħ ä¸Ń åıĸ json ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġarr ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġindex ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Json From J Arr ( arr : ĠJSONArray , Ġindex : ĠInt ): ĠJSONObject ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġ` object `: ĠJSONObject ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ` object ` Ġ= Ġarr . getJSONObject ( index ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ` object ` ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġèİ·åıĸ Json çļĦ String å±ŀæĢ§ ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġobject ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġkey ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Json Integer (` object `: ĠJSONObject , Ġkey : ĠString ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġvalue Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( contain (` object `, Ġkey )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= ĠInteger . valueOf (` object `. getString ( key )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }