2017-02-28 1 views
0

를 사용하여 배열의 배열을 만들 수 있습니다 나는 다음과 같은 JSON 구조가 있습니다자바 코드 simpleJSon

{ 
    "PARAMORDER": [{ 
     "TAB1": [{ 
      "1": "Picture ID Source" 
     }, { 
      "2": "Place of Issuance" 

     }], 
     "TAB2": [{ 
      "1": "Picture ID Source" 
     }, { 
      "2": "Place of Issuance" 

     }] 
    }] 
} 

내가 그것을 구문 분석 및 검색 할 때 위의 형식과 같은 자바 코드를 사용하여 JSON 배열을 만들려고하고 있어요 . 나는 이것을 위해 org.json.simple API를 사용하고있다. 그러나 자바 코드를 사용하여 JSON 배열 배열을 만들 수 없습니다. JSON을 위의 형식으로 구성 할 수있는 샘플 코드를 제발 공유 할 수 있습니까? 내가 JSONArray의 JSONArray를 만들 수 없습니다입니다

[{ 
    "1": "Picture ID Source" 
}, { 
    "1": "Picturesecond ID Source" 
}] 

:

JSONArray jsonArray = new JSONArray(); 
JSONObject firstJson = new JSONObject(); 
JSONObject secondJson = new JSONObject(); 

firstJson.put("1", "Picture ID Source"); 
secondJson.put("1", "Picture ID Source"); 

jsonArray.add(firstJson); 
jsonArray.add(secondJson); 

System.out.println(jsonArray.toString); 

이 나에게 다음과 같은 JSON을 제공합니다

아래 JSON 배열을 생성 내가 시도 샘플 코드입니다. 누군가 나를 도와 줄 수 있습니까? 미리 감사드립니다.

+0

첫째, 우리는 질의 응답 사이트, 코드 작성 서비스를하지 않습니다. 두 번째로,이 코드는 JSON을 생성하지 않습니다. –

+0

코드에서 필요한 JSON을 제공하지 않는다는 것을 알고있었습니다. 방금 샘플 코드와 같은 제안을 만들고 싶었 기 때문에 여기에 게시했습니다. Stack Over Flow는 항상 내 기술을 향상시키는 데 도움을 주었으며 이것이 코드 작성 서비스가 아니라는 것도 알고있었습니다. – RRN

답변

1

중간 단계를 만드는 데 더 많은 코드가 필요하지만 구조는 무기한으로 나무와 같은 방식으로 추가 될 수 있습니다. 또한 샘플의 최상위 레벨은 배열이 아닌 JSON 객체입니다.

JSONObject root = new JSONObject(); 
JSONArray paraArray = new JSONArray(); 
JSONObject a = new JSONObject(); 
JSONArray tab1 = new JSONArray(); 
JSONObject source1 = new JSONObject(); 
source1.put("1", "Picture ID Source"); 
tab1.add(source1); 
JSONObject source2 = new JSONObject(); 
source2.put("2", "Place of Issuance"); 
tab1.add(source2); 
a.put("TAB1", tab1); 
paraArray.add(a); 

JSONObject b = new JSONObject(); 
JSONArray tab2 = new JSONArray(); 
JSONObject source3 = new JSONObject(); 
source3.put("1", "Picture ID Source"); 
tab2.add(source3); 
JSONObject source4 = new JSONObject(); 
source4.put("2", "Place of Issuance"); 
tab2.add(source4); 
b.put("TAB2", tab2); 
paraArray.add(b); 

root.put("PARAMORDER", paraArray); 

System.out.println(root.toString()); 

출력 모든

{"PARAMORDER":[{"TAB1":[{"1":"Picture ID Source"},{"2":"Place of Issuance"}]},{"TAB2":[{"1":"Picture ID Source"},{"2":"Place of Issuance"}]}]} 
+0

고맙습니다. Adam !! 그 생각은 내 문제를 해결했습니다 :) 다시 한번 감사드립니다 !! – RRN