安卓

2013-03-30 92 views
2

解析JSON对象和数组我有这样的JSON,我想在我的Android应用安卓

{ 

    "json":{ 


     "albums":[{"id":"1","name":"Best Sumer colections","singer":"Dj Tiresto","genre":"Trance","mix":"yes","thumb":"alb1.png","songs": 
              [ 
              {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


                                   ] 
        }, 
        {"id":"2","name":"Best Sumer colections","singer":"Dj Tiresto","genre":"Trance","mix":"yes","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"3","name":"O viatza","singer":"Maria Bieshu","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"4","name":"De petrecere","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"5","name":"De petrecere","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"6","name":"De petrecere 2013","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        } 

     ] 


    } 


} 

但我只能从logcat中获得Reading a NULL string not supported here.。 因此,这里是我的代码,我用它来解析JSON:

// Creating JSON Parser instance 
     JSONParser jParser = new JSONParser(); 

     // getting JSON string from URL 
     JSONObject json = jParser.getJSONFromUrl(url); 

     try { 
      // Getting Array of albums 

      albums = json.getJSONArray(TAG_ALBUMS); 

      // looping through All albums 
      for(int i = 0; i < albums.length(); i++){ 
       JSONObject c = albums.getJSONObject(i); 

       // Storing each json item in variable 
       String album_id = c.getString(TAG_ID); 
       String album_name = c.getString(TAG_NAME); 
       String album_singer = c.getString(TAG_SINGER); 
       String album_genre = c.getString(TAG_GENRE); 
       String album_thumb = c.getString(TAG_THUMB); 

       // songs are again JSON Object 
       JSONObject songs = c.getJSONObject(TAG_SONGS); 
       String artist = songs.getString(TAG_SONG_ARTIST); 
       String mp3 = songs.getString(TAG_SONG_MP3); 
       String mp4 = songs.getString(TAG_SONG_MP4); 
       String song_thumb = songs.getString(TAG_SONG_THUMB); 
       String song_title = songs.getString(TAG_SONG_TITLE); 
       Log.v("--", "Albums \n"+" "+album_id+" "+album_name+" "+ album_genre+" "+album_singer+" "+album_thumb); 
      } 


     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 

因此,谁能帮我解决这个问题。

回答

1

JSONArray songs = c.getJSONArray(TAG_SONGS);

songs是一个JSONObjects数组,你应该可以处理它以同样的方式,你正在分析albums

+0

你能给我更详细的解决方案..谢谢你的回答 –

+0

'歌曲'是一个JSON对象数组,其中每个对象都有标签mp3,mp4,artist,thumb等。 – Swayam

+0

除了歌曲部分之外,这样做几乎是正确的。所以,为此,看看http://stackoverflow.com/questions/9529558/how-to-parse-this-json-array-in-android。 – Swayam