객체 목록을 jsonObject로 변환하는 방법은 무엇입니까?
Pojo 클래스 목록을 jsonObject로 변환하고 있습니다. 전체 목록을 jsonArray로 변환했지만 배열 범위에서 필드를 추가하려면 어떻게해야합니까?
List<Order> items = new ArrayList<>();
if (checkOutList != null) {
for (Category.Items i1 : checkOutList) {
Order order = new Order();
order.setC_id(i1.getCid());
order.setItem_id(i1.getItem_id());
order.setQuantity(i1.getCount());
items.add(order);
}
Order order = new Order();
order.setOd_total_cost(cardValue.getText().toString().trim());
order.setR_id(checkOutList.get(0).getRid());
order.setU_id("5");
items.add(order);
Gson gson = new GsonBuilder().create();
JsonArray myCustomArray = gson.toJsonTree(items).getAsJsonArray();
Log.e("order", myCustomArray.toString());
}
위의 코드는 나에게 출력을 제공했습니다.
[{"c_id":"3","item_id":"18","quantity":"5"},{"od_total_cost":"Card Value: $30.14","r_id":"1","u_id":"5"}]
내가 원하는 출력
{"items":[{"quantity":"25","c_id":"70","item_id":"10"}],"r_id":"5","u_id":"70","od_total_cost":"20000"}
최신 정보
JsonElement jsonObject=gson.toJsonTree(order);
Log.e("order", myCustomArray.toString()+jsonObject.toString());
한 줄 위에 추가하면 arrayname : items를 추가하는 방법이 무엇입니까? 전체 출력을 json 객체로 추가
[{"c_id":"3","item_id":"18","quantity":"5"},{"c_id":"3","item_id":"17","quantity":"2"},{"c_id":"2","item_id":"91","quantity":"2"},{"c_id":"2","item_id":"9","quantity":"1"}]{"od_total_cost":"Card Value: $20.16","r_id":"1","u_id":"5"}
다른 방법도 유효하다고 생각하지만 POJO를 사용할 수도 있습니다.
class WholeObject{
List<Order> items;
String r_id;
String u_id;
String od_total_cost;
//---getters and setters---
}
WholeObject wo = new WholeObject();
wo.setR_id("5");
wo.setU_id("70");
wo.setOd_total_cost("20000");
wo.setItems(yourOrders);
Log.e("order", new Gson().toJson( wo ) );
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다