2015-05-27 2 views
0

Вот мой код:Список Java в формате JSON

public String getList() throws JSONException { 
     List<User> data = member.getCurrentMembers() ; 
     for (User u : data) { 
      JSONObject datas = new JSONObject(); 
      datas.put("name", u.getUserName()); 
      datas.put("account", u.getAccount()); 
      datas.put("edit", u.getUserId()); 
      datas.put("id", u.getUserId()); 
      System.out.println(datas); 
     } 
     return str; 
    } 

Теперь он будет печатать:

{"name":"aa","id":1,"edit":1,"account":"[email protected]"} 
{"name":"qq","id":2,"edit":2,"account":"[email protected]"} 
{"name":"ww","id":3,"edit":3,"account":"[email protected]"} 

И формат JSON Я хочу это:

{ 
    "Data": [ 
    {"name":"aa","id":1,"edit":1,"account":"[email protected]"}, 
    {"name":"qq","id":2,"edit":2,"account":"[email protected]"}, 
    {"name":"ww","id":3,"edit":3,"account":"[email protected]"},  
    ] 
} 

WAHT можно делать ??
Пожалуйста, руководство меня. спасибо

+0

Попробуйте обертывание всего эти 'JSONObjects' с точностью до' JSONArray' – ceekay

+0

Как я могу поместить каждые данные вместе ?? – user2492364

+0

Используйте JSONArray. Ответ здесь: http://stackoverflow.com/questions/18983185/how-to-create-correct-jsonarray-in-java-using-jsonobject – romfret

ответ

0

Это может сделать трюк

public String getList() throws JSONException { 
    List<User> data = member.getCurrentMembers() ; 
    JSONArray array = new JSONArray(); 
    for (User u : data) { 
     JSONObject datas = new JSONObject(); 
     datas.put("name", u.getUserName()); 
     datas.put("account", u.getAccount()); 
     datas.put("edit", u.getUserId()); 
     datas.put("id", u.getUserId()); 
     array.put(datas); 
    } 
    JSONObject result = new JSONObject(); 
    result.put("Data", array); 
} 

Надеется, что это помогает Dan

Смежные вопросы