2017-09-25 1 views
1

아래의 코드를 보시기 바랍니다. 키 "샘플"의JSONObject를 누적시킨 후이 "[]"문자열을 배열로 변환하십시오.

값은 빈 문자열 배열로 []"[]"

모두 put & accumulate 함수를 변환하는 것이다.

import net.sf.json.JSONObject; 

public class sample { 
    public static void main(String[] args){ 

     JSONObject resObj = new JSONObject(); 
     resObj.put("sample","[]"); 
     System.out.println(resObj); 

    } 
} 

출력 :

{"sample":[]} 

는 I는 같은 값 ("[]")를 원한다. like :

{"sample":"[]"} 

이 문제를 어떻게 해결할 수 있습니까?

는 업데이트 : 예 위

은 문제를 설명하는 것입니다.

실제로 큰 XML에서 JSON을 생성하고 있습니다. 생성 된 JSON에는 문제가 없습니다.

전체 JSON 문자열을 전달하여 & 누적 기능이이 문제에 직면하는 동안.

+0

대괄호를 이스케이프 해 보셨습니까? – Amit

+0

왜'[]'를 큰 따옴표로 묶고 싶습니까? 결과물에서 JSONObject는 목록이 JSON 형식의 일부이므로 '[]''을 빈 목록으로 간주하는 것이 논리적 인 것처럼 보입니다. '\\'를 통해 이스케이프 처리를 시도 했습니까? –

+0

'resObj.put ("sample", "\"[] \ "");'을 사용 해보십시오. – procrastinator

답변

0

당신이 오히려 오래된 구현이 사용하고있는 json-lib 라이브러리는 다음 시도

import org.json.JSONObject; 
System.out.println(new JSONObject().put("sample","[]")); 

올바르게 것이다 here 및 사용 받는다는

<!-- https://mvnrepository.com/artifact/org.json/json --> 
<dependency> 
    <groupId>org.json</groupId> 
    <artifactId>json</artifactId> 
    <version>20170516</version> 
</dependency> 

을 찾을 수있는 "공식적인"org.json 하나 출력

{"sample":"[]"} 
관련 문제