簡體   English   中英

解析表中的JSON數據

[英]Parsing JSON data in a table

`JSONObject c;JSONArray events;JSONObject event_data;
        JSONArray cont;JSONObject contacts_data;
        JSONObject jsonObj=new JSONObject(data);
        categories = jsonObj.getJSONArray("categories");
        for (i = 0; i < categories.length(); i++)
        {
            ContentValues valuesCat=new ContentValues();
            c = categories.getJSONObject(i);
            String name = c.getString("name");
            Toast.makeText(this, name, Toast.LENGTH_SHORT).show();
            String blck=c.getString("black_icon_url");
            String wht=c.getString("white_icon_url");
            valuesCat.put(GetData.CATEGORY_ID, "c_"+(i+1) );
            valuesCat.put(GetData.C_NAME, name);
            valuesCat.put(GetData.BLACK, blck);
            valuesCat.put(GetData.WHITE, wht);
            try{
            db.insertOrThrow(GetData.TABLE_CATEGORTIES, null, valuesCat);}
            catch(Exception e){}
            events=c.getJSONArray("events") ;
            for(j = 0 ; j < events.length() ; j++)
            {
                event_data = events.getJSONObject(j);
                cont=event_data.getJSONArray("contacts");
                for(k = 0 ; k < cont.length() ; k++)
                {
                    ContentValues valuesCon=new ContentValues();
                    contacts_data=cont.getJSONObject(k);
                    String nm1=contacts_data.getString("name");
                    String phone=contacts_data.getString("phone");
                    String fb=contacts_data.getString("facebook");
                    String id="c_"+(i+1)+"e_"+(j+1)+"_"+k;
                    valuesCon.put(GetData.CONTACT_ID, id);
                    valuesCon.put(GetData.NAME, nm1);
                    valuesCon.put(GetData.PHONE, phone);
                    valuesCon.put(GetData.FAB, fb);
                    db.insertOrThrow(GetData.TABLE_CONTACTS, null, valuesCon);

                }

            }
        }           
    } 
    catch (Exception e) 
    {

        e.printStackTrace();
    }`

JSON [link]:“ http://jsonviewer.stack.hu/#http://www.edg.co.in/events.json

我將以下JSON對象解析為一個表,但是當我運行代碼時,只有第一次迭代成功運行,並且循環終止。 我正在處理的JSON有點復雜,它在另一個數組和另一個數組中都有一個數組。 救命!! 遍歷整個JSON對象

我的建議是使用GSON Librarie,我已經使用了幾個月,它確實功能強大。

您需要做的是定義您的數據模型,GSON librarie將為您完成其余工作,它將根據需要分配所有內容,並將您的信息填充到對象中...

下載=> https://code.google.com/p/google-gson/downloads/list

一些示例=> https://sites.google.com/site/gson/gson-user-guide

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM