您好,登錄后才能下訂單哦!
1 簡單的一個 { ,,,,}
2 里面有數(shù)組 { , [{,,},{,,}],}
3 直接一個數(shù)組
4 數(shù)組里有數(shù)組
5 其他情況? 沒有吧,除非json格式不規(guī)范
Android的SDK中包含四個與JSON相關(guān)的類和一個Exceptions:JSONArray、JSONObject、JSONStringer、JSONTokener、JSONException。通過這5個類我們就可以自行對Json進(jìn)行解析(使用很簡單,可以網(wǎng)上搜索使用方法或者參照Android SDK),另外Google在Android的SDK中放入了JsonReader和JsonWriter來方便我們讀寫Json。
//最簡單 的 直接一個對象
// {"username":"zms",age:23,"addr","from china"};
String json="{\"username\":\"zms\",\"age\":43,\"addr\":\"江西省高安市村前鎮(zhèn)\"}";
JSONObject jsonObject2 =new JSONObject(json);
str="名字:"+jsonObject2.getString("username")+"年薪:"+jsonObject2.getString("age")+jsonObject2.getString("addr")+"\n";
//對象里有數(shù)組
//{"username":"zms",age:11,"jicheng":[{"zhengshu":"PMP","date":"2011年"},{"zhengshu":"信息系統(tǒng)項(xiàng)目管理師","date","2012年"}],"addr":"江西"}
// 這種也屬于 對象里有數(shù)組 {"json":[{"username":"zms","date":"2011年"},{"username":"ivy","date","2012年"}]}
String json= "{\"username\":\"張木生\",age:11,\"jicheng\":[{\"zhengshu\":\"PMP\",\"date\":\"2011年\"},{\"zhengshu\":\"信息系統(tǒng)項(xiàng)目管理師\",\"date\":\"2012年\"}],\"addr\":\"江西\"}";
JSONObject jsonObject2 =new JSONObject(json);
str="名字:"+jsonObject2.getString("username");
str=str+"工齡:"+jsonObject2.getString("age")+"證書:";
JSONArray jsonArray = jsonObject2.getJSONArray("jicheng");
for (int i=0;i<jsonArray.length();i++)
{
JSONObject jsonObjectSon= (JSONObject)jsonArray.opt(i);
str=str+jsonObjectSon.getString("zhengshu")+"年份:"+jsonObjectSon.getString("date");
}
str=str+"籍貫"+jsonObject2.getString("addr");
txt1.setText(str);
Log.v("zms", str);
//直接一個數(shù)組
str="";
// 返回的字符串 直接是個數(shù)組
// [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189"},{"devid":"1234567832","latitude":"29.4943","longitude":"1161.129"}]
String json="[{\"devid\":\"1234567800\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"devid\":\"1234567832\",\"latitude\":\"29.4943\",\"longitude\":\"1161.129\"}]";
try {
JSONArray jsonArray = new JSONArray(json);
for (int i=0;i<jsonArray.length();i++)
{
JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i);
str=str+"第"+i+"個,devid:"+jsonObject2.getString("devid")+"維度:"+jsonObject2.getString("latitude")+"經(jīng)度:"+jsonObject2.getString("longitude")+"\n";
}
//數(shù)組里有數(shù)組
String json="["+
"{\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛01\"},"+
" {\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛92\"},"+
" {\"devid\":\"1234567800\",\"gps\":[{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"time\":\"2014-11-12\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\" }],\"devname\":\"贛43\"}"+
"]";
try {
JSONArray jsonArray = new JSONArray(json);
for (int i=0;i<jsonArray.length();i++)
{
String tpstr="";
JSONObject jsonObject5 = (JSONObject)jsonArray.opt(i);
str=str+"第"+i+"條船,設(shè)備號devid:"+jsonObject5.getString("devid");
JSONArray jsonArray5 = jsonObject5.getJSONArray("gps");
for (int j=0;j<jsonArray5.length();j++)
{
JSONObject jsonOb5Son=(JSONObject)jsonArray5.opt(j);
tpstr="采集時間:"+jsonOb5Son.getString("time")+"維度"+jsonOb5Son.getString("latitude")+"經(jīng)度:"+jsonOb5Son.getString("longitude");
}
str=str+tpstr;
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。