1

JSON を解析した後:

    JSONArray jsonArray = new JSONArray(ResponseString);
    for (int i = 0; i < jsonArray.length(); i++) {
       JSONObject currentObject = jsonArray.getJSONObject(i);
       String local_parameter = currentObject.getString("LOCAL_PARAMETER");
       }

次の文字列を取得しています:

       {"Cost": 200,
        "Space": 33,
        "Accommodation": 1,
        "AirConditioning": 1,
        "Apartment": 1,
        "Campfire": 1,
        "Disability": 1,
        "Grill": 1,
        "Kitchen": 1,
        "Monument": 1,
        "Parking": 1,
        "Scene": 1,
        "Wifi": 1,
        "ClosedArea": 1 }

キー/値でArrayListを取得するには?

解決策: currentObject を JSONObject として取得し、必要な値の文字列を取得します。

 String cost = currentObject.getJSONObject("LOCAL_PARAMETER")
                            .getString("Cost").toString(); 
4

3 に答える 3

0

値を含む ArrayList を本当に取得したい場合は、JSONObjects を使用するこの方法が最適だとは思わない場合でも、次のように実行できます。

final ArrayList<Pair<String, Integer>> values = new ArrayList<Pair<String,Integer>>();
final JSONObject localParams = new JSONObject(local_parameter);
final Iterator<String> iterator = localParams.keys();
while (iterator.hasNext())
{
    final String key = iterator.next();
    values.add(new Pair<String, Integer>(key, localParams.optInt(key)));
}

しかし、これがJSONObjectsを処理する最良の方法だとは本当に思いません...

于 2014-05-12T13:49:27.017 に答える