2012-12-11 5 views
0

나는 아래의 JSON 데이터를 가지고 있지만 심볼과 그림의 쌍을 검색하여 Listview에 표시 할 수 있는지 궁금합니다. JSON Array에있는 경우 요소를 검색 할 수만 있습니다.배열에없는 json 개체 요소를 검색하는 방법은 무엇입니까?

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

}

+0

제발, 내가 JSON이 무엇인지 알고 있지만 나는 당신의 질문을 이해할 수 없습니다. 단락과 물음표를 사용하십시오. 당신이 원하는 것을 설명 할 수 있을까요? 좀 더 분명해질 수 있을까요? –

답변

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

감사합니다. 도움이 되긴하지만 아직 하나의 문제가 있습니다. 기호 (예 : "AED")를 지정하지 않고 모든 요소를 ​​가져 와서 쌍으로 표시 할 수 있습니까? –

+0

아니야, 이건 배열이 아니기 때문에 .. – Nermeen

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... 
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]); 
    } 
관련 문제