2012-05-05 1 views
4

내 된 JSONObject :이름을 언급하지 않고 JSONObject에서 값을 얻을 수 있습니까?

내가 ID, 이름 또는 가격의 가치를 얻을 수
menuitemArray.getJSONObject(i).getString("id"); 

, 그 이름을 언급하지 않고, 인덱스 나처럼 될 수

{MyJSON:[{"id":"1","name":"panji","price":"100"}]} 

나는이 ID의 값을 얻기 위해 할 또 다른 방법?

+2

이름을 언급 할 때 무엇이 ​​잘못 되었습니까? 그 문제에 직면 해 있습니까? – Mat

답변

1

당신이

for(Iteraor key=jsonObject.keys();itr.hasNext();) { 
    jsonObject.get(key.next()); 
} 
+1

for-each 구문과 함께 Iterator를 사용할 수 있을지 확신하지 못합니다. AFAIK는'Iterable'과 배열에서만 작동합니다. –

+0

감사합니다. 지금 수정했습니다. – gkamal

9

당신은 요소의 이름의 JSONArray을 얻기 위해 JSONObjectnames()를 호출 할 수 있습니다처럼 된 JSONObject의 모든 속성을 얻을 수 있습니다 - 이것은 당신이 그들에 논리를하자 또는 검색 할 것 그들의 해당 값을 동적으로.

+0

답해 주셔서 감사합니다. 'JSONObject'에'names' 메소드가 있다는 것을 알지 못했고'Iterator'를 사용하려고 시간을 낭비했습니다 – X09

+0

** 404 찾을 수 없음 ** –

+0

@ImanMarashi가 고쳐졌습니다. –

0
JSONObject obj = new JSONObject(json); 
for(Iterator<String> keys=obj.keys();keys.hasNext();) { 
    obj.get(keys.next()); 
} 
+4

질문에 어떻게 답할 수 있습니까? ? – Phani

관련 문제