Xilent
Fortgeschrittenes Mitglied
- 89
 
Hallo liebe Community,
ich habe ein kleines Problem mit multidimensionalen Arrays in JSON. Hier der JSON Ausschnitt:
JSON-Request:
	
	
	
		
JSON-Parser:
	
	
	
		
Das Problem besteht darin, dass ich nicht an die "links" Daten im Teil von "tracks" komme. Wenn ich meinen JSON Reader auf links einstelle, dann ließt er immer nur den oberen Teil, nicht aber in der "tracks"-Region.
Die originalen JSONs darf ich hier aufgrund des vertraulichen Inhalts nicht veröffentlichen.
Hat jemand Rat für mich?
Vielen Dank im Voraus!
LG xilent
				
			ich habe ein kleines Problem mit multidimensionalen Arrays in JSON. Hier der JSON Ausschnitt:
JSON-Request:
		Code:
	
	{
   "name": "Track Charts",
   "type": "WEEKLY",
   "periodStart": "2013-09-30T00:00:00.0000000+02:00",
   "periodEnd": "2013-10-06T23:59:59.9999999+02:00",
   "links":    [
            {
         "href": "censored",
         "rel": "self"
      },
            {
         "href": "censored",
         "rel": "curie:catalog"
      },
            {
         "href": "censored",
         "rel": "curie:play"
      },
            {
         "href": "censored",
         "rel": "curie:user"
      },
            {
         "href": "censored",
         "rel": "play:bulk-download"
      }
   ],
   "tracks":    [
            {
         "links":          [
                        {
               "href": "censored",
               "rel": "catalog:track"
            },
                        {
               "href": "censored",
               "rel": "user:favorite-track"
            },
                        {
               "href": "censored",
               "rel": "catalog:artist"
            },
                        {
               "href": "censored",
               "rel": "play:track"
            },
                        {
               "href": "censored",
               "rel": "play:track-sample"
            },
                        {
               "href": "censored",
               "rel": "catalog:album"
            },
                        {
               "href": "censored",
               "rel": "catalog:image-64x64"
            },
                        {
               "href": "censored",
               "rel": "catalog:image-256x256"
            },
                        {
               "href": "censored",
               "rel": "catalog:image-128x128"
            }
         ],
         "name": "Wake Me Up (Radio Edit)",
         "artistName": "Avicii",
         "albumName": "Wake Me Up",
         "lengthInSeconds": 250,
         "genre": "Dance",
         "label": "Universal Music",
         "releaseYear": "2013"
      },........
	
		Code:
	
	ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
                    		       try{
                    			
                    			JSONArray  tracksJSON = json.getJSONArray("tracks");
                    			JSONArray  linksJSON = json.getJSONArray("links");
                                Log.d("test","1");
                    		      	       	//Loop the Array
                    		        for(int i=0;i < tracksJSON.length();i++){
                    		        	HashMap<String, String> tracks = new HashMap<String, String>();
                    		        	
                    		             	for(int j=0; j < linksJSON.length();j++){
                    		             		
                    		        		JSONObject e = linksJSON.getJSONObject(j);
                    		        		String rel = e.getString("rel");
                    		        		String link = e.getString("href");
                    		        		Log.d("test", rel);
                    		        		String[] separated = rel.split(":");
                    		        	    tracks.put("link_"+separated[1], link);
                    		        		
                    		        		
                    		        		
                    		        		
                    		        	}
                    		        	JSONObject e = tracksJSON.getJSONObject(i);
                    		        	tracks.put("id",  String.valueOf(i));
                    		        	tracks.put("name", e.getString("name"));
                    		        	tracks.put("artistName", e.getString("artistName"));
                    		        	tracks.put("albumName", e.getString("albumName"));
                    		        	tracks.put("length", e.getString("lengthInSeconds"));
                    		        	tracks.put("genre", e.getString("genre"));
                    		        	tracks.put("label", e.getString("label"));
                    		        	tracks.put("releaseYear", e.getString("releaseYear"));
                    		        	mylist.add(tracks);
                    		        	Log.d("LIST", mylist.toString());
                    			}
                    		       }catch(JSONException e)        {
                    		       	 Log.e("log_tag", "Error parsing data "+e.toString());
                    		       }
	Die originalen JSONs darf ich hier aufgrund des vertraulichen Inhalts nicht veröffentlichen.
Hat jemand Rat für mich?
Vielen Dank im Voraus!
LG xilent
			
				Zuletzt bearbeitet: