如何检索不在数组中的json对象元素?

时间:2012-12-11 11:21:21

标签: android json listview

我在下面有这个json数据,但我想知道如何检索这对符号和数字并在Listview中显示它。我只能检索它们在JSON数组中的元素。请帮助< / p>

{ "rates": {
    "AED": 3.672626,
    "AFN": 48.3775,
    "ALL": 110.223333,
    "AMD": 409.604993,
     "ZAR": 8.416205,
    "ZMK": 4954.411262,
    "ZWL": 322.355011
}

}

3 个答案:

答案 0 :(得分:0)

JSONObject jsonResult = new JSONObject(yourString);
JSONObject rates = jsonResult.getJSONObject("rates");
double aed = rates.getDouble("AED");
double afn = rates.getDouble("AFN");
....

答案 1 :(得分:0)

尝试:

JSONObject jarrau = new JSONObject("Your JSON String");

    JSONObject jsonobj = jarrau.getJSONObject("rates");
    double dub_AED,dub_AFN, dub_ALL;
     //AAED
    if(!jsonobj.isNull("AED"))
     dub_AED=jsonobj.getDouble("AED");
    else
       // set default value here
     //AFN
    if(!jsonobj.isNull("AFN"))
     dub_AFN=jsonobj.getDouble("AFN");
    else
       // set default value here        
     //ALL
    if(!jsonobj.isNull("ALL"))
     dub_ALL=jsonobj.getDouble("ALL");
    else
       // set default value here

    // pasre all same as...

答案 2 :(得分:0)

因为在这种情况下你不需要键,所以我们还需要从json获取键,所以在这种情况下我们需要第一个键然后我们需要获得该特定键的值。

因此,以下是代码: -

    String[] sKey,sValue;

    JSONObject jobject = new JSONObject(your result);
    JSONObject jobj = jobject;

    JSONObject jrates = jobj.getJSONObject("rates");

    sKey = new String[jrates.length()];
    sValue = new String[jrates.length()];

    for(int i=0;i<jrates.length();i++){
    sKey[i] = (String)keys.next();
    sValue[i] = (String)jrates.getString(sKey[i]);
    }