2014-01-31 3 views
0

문자열의 배열에 복잡한 json 객체를 넣을 수있는 방법은 무엇입니까?json을 java의 문자열로 변환

JSON 샘플

{ 
    "FriendsList": [ 
    { 
     "username": "ChanServ", 
     "avatar": "http:\/\/clavatars.photos-box.org\/chack.jpg" 
    }, 
    { 
     "username": "kroot", 
     "avatar": "http:\/\/clavatars.photos-box.org\/land2.jpg" 
    }, 
    { 
     "username": "morrildl", 
     "avatar": "http:\/\/clavatars.photos-box.org\/land3.jpg" 
    }, 
    { 
     "username": "addo", 
     "avatar": "http:\/\/clavatars.photos-box.org\/land8.jpg" 
    } 
    ] 
} 

이 코드입니다 :

protected void onPostExecute(String result) { 
    super.onPostExecute(result); 
    JSONObject json; 
    try { 
     json = new JSONObject(result); 
     tvhttp.setText(json.toString(2)); 
    } catch (JSONException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 
+0

tvhttp.setText (result); 결과는 이미 문자열 바로입니까? 당신은 실제로 무엇을하려고 애 쓰고 있습니까? – deniz

답변

3

이 하나

JSONObject json = null; 
    try { 
     json = new JSONObject(result); 
     JSONArray jsonArray = json.getJSONArray("FriendsList"); 

     for (int j = 0; j < jsonArray.length(); j++) { 

      JSONObject jsonObjectData1 = jsonArray.getJSONObject(j); 

      String username = jsonObjectData1.getString("username"); 
      String avatar = jsonObjectData1.getString("avatar"); 
     } 

    } catch (JSONException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
0

을 시도 **보십시오이 코드 ... **

JSONObject json = null; 
ArrayList<String> userNameList=new ArrayList<String>(); 
ArrayList<String> avatarList=new ArrayList<String>(); 
try { 
    json = new JSONObject(result); 
    JSONArray jsonArray = json.getJSONArray("FriendsList"); 

    for (int i = 0; i < jsonArray.length(); i++) { 

     JSONObject jsonObjectData1 = jsonArray.getJSONObject(i); 

     String username = jsonObjectData1.getString("username"); 
     String avatar = jsonObjectData1.getString("avatar"); 
     userNameList.add(username); 
     avatarList.add(avatar); 
    } 

} catch (JSONException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
}