2017-03-01 3 views
-3
{"721xxxxxxx":true,"722xxxxxxx":true,"723xxxxxxx":true} 

Wie kann ich alle Schlüssel in der json lesen und wie alle Daten in der Jsonarraylesen Json in android

Mein Code zählen kann ->

String members = s; 
/* s contain {"721xxxxxxx":true,"722xxxxxxx":true,"723xxxxxxx":true} */ 
JSONArray jsonChildArr = new JSONArray(members); 

Log.e("Error","Data in jsonArray--->"+jsonChildArr.length()); 
+1

Dass eine 'JSONObject' keiner' JSONArray' –

+0

JSONARRAY mit einer Länge Eigenschaft .. das ist json Object, Sie haben keine Längenmethode – Keerthivasan

+0

Ihre Zeichenfolge {"721xxxxxxx": true, "722xxxxxxx": true, "723xxxxxxx": true} ist ein jsonobject nicht jsonarray. – Pavan

Antwort

0

wie folgt tun.

try { 
      String members = s; 
/* s contain {"721xxxxxxx":true,"722xxxxxxx":true,"723xxxxxxx":true} */ 

      JSONObject obj = new JSONObject(members); 

     JSONArray array = obj.names(); 

     Log.d("ItemCount",array.length()+""); 

     for(int i=0;i<array.length();i++){ 
      Log.d("Item",array.getString(i)+":"+ obj.getBoolean(array.getString(i)); 
     } 

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

Danke für die Antwort ak Sacha – khalil

+0

Ihre Begrüßung :) Happy Coding :) .. und Sie können upvote auch so andere Hilfe von ihm bekommen können. –

+0

Ich habe versucht, es zu wählen, aber hat weniger Reputation nach System – khalil

1

einfacher Weg zu lesen Sie JSON-Objekt

JSONObject jsonObject = new JSONObject(members); 
Log.i("Data","Data in jsonObject--->"+jsonObject.getBoolean("721xxxxxxx")); 
0

die Sie interessieren,

JSONObject jsonObject = new JSONObject(result); 
    boolean data = jsonObject .getBoolean("721xxxxxxx"); 
    Log.d("Data","data:"+data); 
0

try this:

String jsonStr = "{"721xxxxxxx":true,"722xxxxxxx":true,"723xxxxxxx":true}"; 
JSONObject itemJsonObj = new JSONObject(jsonStr); 

HashMap<String,Boolean> result = new HashMap<>(); 
while(itemJsonObj.keys().hasNext()){ 
    //parse json and save as key-value. 
    result.put(itemJsonObj.keys().next()+"",itemJsonObj.get(itemJsonObj.keys().next()); 

// result.size() ist wie Größe des Arrays.

}

0

schrieb ich eine Bibliothek für das Parsen und Generieren von JSON in Android http://github.com/amirdew/JSON

für Ihre Probe:

JSON jsonData = new JSON(jsonString); 
int count = jsonData.count();