2017-05-28 8 views
0

Also versuche ich, Werte von einem JSONArray in ein JSONObject zu bekommen, aber ich bekomme ständig diesen Fehler: org.json.JSONException: Value Aamod Shoghi bei 0 vom Typ java.lang.String kann nicht auf JSONObjectorg.json.JSONException: Valuef Typ java.lang.String kann nicht in JSONObject konvertiert werden

Daten
JSONObject json = jParser.makeHttpRequest(url_all_resorts, "POST", params); 
      Log.d("All Resorts : ", json.toString()); 
      // Checking for SUCCESS TAG 
      int success = json.getInt(TAG_SUCCESS); 

      if (success == 1) { 
       // resorts found 
       // Getting Array of resorts 
       resorts = json.getJSONArray(TAG_RESORT); 
       rates = json.getJSONArray(TAG_PRICE); 

       int i; 

       // looping through All resorts 
       for (i = 0; i < resorts.length() & i < rates.length(); i++) { 
        JSONObject c = resorts.getJSONObject(i); 
        JSONObject d = rates.getJSONObject(i); 

        // Storing each json item in variable 
        String name = c.getString(TAG_NAME); 
        String price = d.getString(TAG_ROOM_PRICE); 

        // creating new HashMap 
        HashMap<String, String> map = new HashMap<String, String>(); 

        // adding each child node to HashMap key => value 
        map.put(TAG_NAME, name); 
        map.put(TAG_ROOM_PRICE, price); 

        // adding HashList to ArrayList 
        resortsList.add(map); 
       } 

      } 

JSON Probe

{"resorts":["Aamod Shoghi","Aamod Shoghi","Aamod Shoghi"],"room_prices":["100","800","1000"],"success":1} 
+1

Post json Beispieldaten – FAT

+0

Hinzugefügt die Daten @FAT –

Antwort

1

Ihre resorts und room_prices Array strings enthält nur umgewandelt werden.

Verwendung:

// Storing each json item in variable 
String name = resorts.getString(i); 
String price = rates.getString(i); 

Statt:

JSONObject c = resorts.getJSONObject(i); 
JSONObject d = rates.getJSONObject(i); 

// Storing each json item in variable 
String name = c.getString(TAG_NAME); 
String price = d.getString(TAG_ROOM_PRICE); 

Try this:

 ........... 
     ................... 

     if (success == 1) { 
      // resorts found 
      // Getting Array of resorts 
      resorts = json.getJSONArray("resorts"); 
      rates = json.getJSONArray("room_prices"); 

      int i; 

      // looping through All resorts 
      for (i = 0; i < resorts.length() & i < rates.length(); i++) { 
       // Storing each json item in variable 
       String name = resorts.getString(i); 
       String price = rates.getString(i); 

       // creating new HashMap 
       HashMap<String, String> map = new HashMap<String, String>(); 

       // adding each child node to HashMap key => value 
       map.put(TAG_NAME, name); 
       map.put(TAG_ROOM_PRICE, price); 

       // adding HashList to ArrayList 
       resortsList.add(map); 
      } 

     } 
+0

Vielen Dank! es funktionierte @FAT –

+0

Herzlich willkommen :) – FAT

Verwandte Themen