2012-01-10 12 views
1

я получаю ответ JSON из веб-службы:андроид значение ключа ответа JSON, разбор

{"CoverageSearchByLatLongResult":{"HasTransmissionAreasWithSignal":true,"SwitchOffArea": 
{"OpenForVastApplications":false,"SeperateTileSetUrl":"http:\/\/myswitch.merged.stage.orchard.net.au\/geodatafiles\/SwitchOffArea\/442b8844-3c05-4548-9424- 
4fdafc1f3c62\/Seperate","HASStatus":"Future","HASStatement":"<p>The Household Assistance Scheme is not yet available in this switchover area. Eligible households will be sent a letter when the scheme opens in the Sydney area.<\/p>","SwitchOffDate":"31 December 2013","Events":{"MaximumProximity":6.864859435168742,"Items":[{"Name":"Test Event","Time":"Time","Url":"","Date":"Date","Address":"19a Boundary Street, Rushcutter... 

поэтому мой вопрос, в андроида Java, как попросить ключ: CoverageSearchByLatLongResult

в ObjC в iphone, что-то вроде этого:

NSDictionary *coverageResult = [response objectForKey:@"CoverageSearchByLatLongResult"]; 

поэтому в основном им разбор словаря с ключом, но результат мне нужно поместить его в другой словарь,

[исправить меня, если неправильно, в java словарях называются картами?]

как это сделать?

спасибо большое!

ответ

2

Вы должны использовать классы в пакете org.json:

http://developer.android.com/reference/org/json/package-summary.html

С ними вы можете делать такие вещи, как:

try { 
    String jsonString = "YOUR JSON CONTENT"; 
    JSONObject obj = new JSONObject(jsonString); 
    JSONObject anotherObj = obj.getJSONObject("CoverageSearchByLatLongResult"); 
    boolean bool = anotherObj.getBoolean("HasTransmissionAreasWithSignal"); 

    JSONArray jsonArray = obj.getJSONArray("arrayKey"); 
    int i = jsonArray.getInt(0); 
} catch (JSONException e) { 
    e.printStackTrace(); 
} 

Java Maps карты ключей к значениям. В качестве примера их использования:

Map<String, Integer> map = new HashMap<String, Integer>(); 
map.put("string key", 1); 
map.put("another key", 3); 
Смежные вопросы