2011-05-09 5 views
7

"{hello1: hi, hello2: hey}"과 같은 JSONObject를 "hello1: hi, hello2: hey"으로 변환하려면 어떻게해야합니까? { }?JSONObject에서 String으로 Android

JSONObject.tostring을 사용할 수있는 기회가 있다는 것을 알고 있지만 대괄호가있는 문자열을 얻습니다.

감사합니다.

답변

12

부분 문자열이나 문자열을 대체하십시오.

의사 문자열 예 :

JSONObject a = new JSONObject("{hello1: hi, hello2: hey}"); 
String b = a.toString().substring(1, a.toString().length() - 1); 

의사 문자열 예 대체 :

JSONObject a = new JSONObject("{hello1: hi, hello2: hey}"); 
String b = a.toString().replace("{", ""); 
String c = b.toString().replace("}", ""); 
+2

'길이'는 '길이'가 아닌 철자가 필요합니다. :) – user3241507

2

는 당신이 실제로 귀하의 질문보다 더 정교한 뭔가를 원하는 가정은 제안 당신은 몇 가지를 만들 수 있습니다 JSON에 대한 가정을하면 다음과 같은 작업을 수행하여 원하는 출력 형식을 얻을 수 있습니다.

JSONObject json = new JSONObject("{hello1: hi, hello2: hey}"); 

StringBuilder sb = new StringBuilder(); 
for(String k : json.keys()) { 
    sb.append(k); 
    sb.append(": "). 
    sb.append(json.getString(k)); 
    sb.append(", ") 
} 

// do something with sb.toString() 

은 다시, 너무 많이 (ProgrammerXR의 대답 @ 경우에 트릭을 할 것)이에 읽고 있습니다.

관련 문제