>  기사  >  Java  >  중첩된 결과에서 동적 JSON 키에 액세스하는 방법은 무엇입니까?

중첩된 결과에서 동적 JSON 키에 액세스하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-10 15:26:031001검색

How to Access Dynamic JSON Keys in Nested Results?

중첩 결과에서 동적 JSON 키에 액세스

JSON 데이터에서 키는 동적일 수 있습니다. 즉, 개체마다 다를 수 있습니다. 이는 특히 중첩된 구조에서 특정 값에 액세스할 때 문제가 될 수 있습니다.

중첩된 결과에서 동적 JSON 키를 처리하려면 JSONObject 클래스의key() 메서드를 활용할 수 있습니다. 이 메소드는 JSON 객체에서 사용 가능한 키를 반복할 수 있는 반복자를 반환합니다.

다음 JSON 구조를 고려하세요.

{
 "status": "OK",
 "search_result": [

            {
                "product": "abc",
                "id": "1132",
                "question_mark": {
                    "141": {
                        "count": "141",
                        "more_description": "this is abc",
                        "seq": "2"
                    },
                    "8911": {
                        "count": "8911",
                        "more_desc": "this is cup",
                        "seq": "1"
                    }
                },
                "name": "some name",
                "description": "This is some product"
            },
            {
                "product": "XYZ",
                "id": "1129",
                "question_mark": {
                    "379": {
                        "count": "379",
                        "more_desc": "this is xyz",
                        "seq": "5"
                    },
                    "845": {
                        "count": "845",
                        "more_desc": "this is table",
                        "seq": "6"
                    },
                    "12383": {
                        "count": "12383",
                        "more_desc": "Jumbo",
                        "seq": "4"
                    },
                    "257258": {
                        "count": "257258",
                        "more_desc": "large",
                        "seq": "1"
                    }
                },
                "name": "some other name",
                "description": "this is some other product"
            }
       ]
}

"question_mark" 필드의 콘텐츠에 액세스하려면 "search_result" 배열의 각 개체에 대해 다음 코드를 사용할 수 있습니다.

for (JSONObject searchResult : searchResults) {
    JSONObject questionMark = searchResult.getJSONObject("question_mark");
    Iterator<String> keys = questionMark.keys();
    
    while (keys.hasNext()) {
        String currentDynamicKey = keys.next();
        
        // Get the value of the dynamic key
        JSONObject currentDynamicValue = questionMark.getJSONObject(currentDynamicKey);
        
        // Do something here with the value...
    }
}

이 코드는 "question_mark" 필드에서 사용 가능한 키를 반복하고 각 키와 연결된 값을 검색합니다. 그런 다음 추가 처리 또는 표시에 이 값을 사용할 수 있습니다.

위 내용은 중첩된 결과에서 동적 JSON 키에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.