2017-03-29 1 views
0

저는 스프링 MVC 응용 프로그램에서 작업하고 있습니다. jsonObjects를 다루기 위해 org.json jar를 사용하고 있습니다. JSONObject가 JSON 배열을 포함하고 있는지 찾으려고합니다. 어떤 일이 나를 도와주세요 허용 : 된 JSONObject가 될 것입니다JSONObject에 특정 JSONARray가 있는지 확인합니다.

{"Object":{ 
    "array":["",""] 
} 
} 

그래서 나는 배열이 몇 번으로 그 JSON 객체에 존재하는지 알고 싶어 :

내가 JSON 개체가 말

{"Object":{ 
    "array11":["",""] 
} 
} 

도와주세요.

+1

전혀 시도한 적이 있습니까? Java로 JSON 구문 분석에 대한 연구를 마쳤습니까? 어떤 코드를 작성 했습니까? – rmlan

+1

@rmlan 예. object.getJSONArray ("ArrayName")을 사용하여 JSONArray를 가져올 수 있다는 것을 알고 있습니다. 하지만 지금은 내 질문에 개체가 배열을 포함하지 않으면 무엇입니까. 존재하는 경우 그 상태를 어떻게 확인합니까? 어레이가 존재하지 않는다면 우리는 예외를 겪을 것이기 때문에 나의 유일한 질문이다. – step

+1

어떤 JSON 라이브러리를 사용하고 있습니까? – rmlan

답변

0

org.json (https://github.com/stleary/JSON-java)을 사용하면이 작업을 수행 할 수 있습니다. 당신은 단순히 JSON 개체 만들려면이 코드를 사용할 수 있습니다

JSONObject object = new JSONObject(String); 

을 그리고 당신은 값이 객체에 존재하는지 확인하기 위해 isNull에 (문자열) 방법을 사용할 수 있습니다. getJSONArray (String) 메서드를 사용하여 배열을 가져올 수 있으며 for 루프와 같은 루프를 만들고 (Strings 대신 int를 사용할 수있는) 배열을 반복 할 수 있습니다. org.json JSON 라이브러리 용 javadocs

+0

안녕하세요 @DarkestCodes. 답장을 보내 주셔서 감사합니다. 그러나 getJSONArray (String)을 호출하는 동안 String이 JSONObject에 존재하지 않는다면 어떻게 될까요? – step

+0

JSONObject에서 _isNull() _ 메소드를 사용하여 존재하는지 확인합니다. – DarkestCodes

0

가 된 JSONObject 해당 키에 존재하지 않는 대상으로하는 키 또는 값이 JSON 배열이 아닌 경우 예외를 발생시키지 않는 optJSONArray() 메소드를 갖는다. JSONObject "foo"의 경우 :

JSONArray array = foo.optJSONArray("array"); 
if (array != null) { 
    // do stuff with the array 
} 
관련 문제