2016-12-20 5 views
1

Ich habe die folgenden JSON und ich möchte alle "Vcsapat" und "Hcsapat" und alle Daten aus den ersten Zeilen analysieren.Parse Json von Json Array in Android

Json ist hier: Link

ich mit dem folgenden Code versucht, aber ich Ausnahmen nur haben

JSONArray JSonAdatok = null; 
JSonAdatok = jObject.getJSONArray("vcsapat"); 

for (int i = 0; i < JSonAdatok.length(); i++) { 
    JSONObject jo = null; 
    try { 
     jo = JSonAdatok.getJSONObject(i); 
     System.out.print("\n"+jo); 
     JSONObject kezdojatekosok = jo.getJSONObject("kezdo"); 
     System.out.print("\n"+kezdojatekosok); 
     for (int j = 0; j < kezdojatekosok.length(); j++) { 
      JSONObject egyjjson = kezdojatekosok; 

Und die Ausnahme ist folgende:

at org.json.JSON.typeMismatch(JSON.java:100) 
org.json.JSONObject.getJSONArray(JSONObject.java:588) 
+0

Bitte zeigen Sie relevante Teile Ihrer JSON-Struktur an, zeigen Sie bitte mehr von der Ausnahmemeldung an und zeigen Sie bitte eindeutig an, welche Codezeile die Ausnahme auslöst –

Antwort

1

Ihre JSON enthält erste ein Objekt, das mit "{" beginnt, so dass Ihre gesamte JSON-Zeichenfolge ein JSON-Objekt darstellt. Dann nach, erhalten in ihm das Objekt „hforma“ dann die JSONArray von forma, und dann können Sie auf sie iterieren auf jeder der hcsapat und vcsapat Attribute als Strings zu erhalten.

Etwas wie folgt aus:

JSONObject complete = new JSONObject(WHOLE_JSON_AS_STRING); 
JSONObject hforma = complete.getJSONObject("hforma"); 
JSONArray forma = hforma.getJSONArray("forma"); 

for (int i = 0; i < forma.length(); i++) { 
    JSONObject formaData = forma.getJSONObject(i); 
    String hcsapat = formaData.getString("hcsapat"); 
    String vcsapat = formaData.getString("vcsapat"); 
} 

ich nicht, dass Code nicht getestet, es ist nur ein Beispiel, das die Struktur Ihrer JSON folgt.