如何在Android中发布嵌套的JSON数据?

时间:2013-11-18 12:21:33

标签: java android json

我需要将以下JSON数据从Android发布到Web服务。这是JSON数据

  

{ “AutoMobileName”: “奔驰”, “引擎”: “V4”, “BrandInfo”:{ “型号”: “C500”, “的ColorType”   :“Black”,“DatePurchased”:“1990”}}

使用Android Java我就是这样做的。

JSONObject holder = new JSONObject();
holder.put("AutoMobileName", "Mercedes");
holder.put("Engine", "V4");
StringEntity se = new StringEntity(holder.toString());
httpost.setEntity(se);

使用上面的代码,这两个参数会被发布,但是如何在嵌套时发送BrandInfo数据。

如何将其放入holder对象并发布?

3 个答案:

答案 0 :(得分:7)

这样做:

     JSONObject holder = new JSONObject();

    //BrandInfo
    JSONObject brandInfo = new JSONObject();
    brandInfo.put("Model", "C500");
    brandInfo.put("ColorType", "Black");
    brandInfo.put("DatePurchased", "1990");


    holder.put("AutoMobileName", "Mercedes");
    holder.put("Engine", "V4");
    holder.put("BrandInfo", brandInfo);
    System.out.println(holder);

答案 1 :(得分:1)

为品牌信息创建另一个json对象

JSONObject brandInfo = new JSONObject();
brandInfo.put("Model","C500");
brandInfo.put("ColorType","Black");
brandInfo.put("DatePurchased","1990");

并将其分配给持有人变量,如下所示:

JSONObject holder = new JSONObject();
holder.put("AutoMobileName", "Mercedes");
holder.put("Engine", "V4");
holder.put("BrandInfo", brandInfo);
StringEntity se = new StringEntity(holder.toString());
httpost.setEntity(se);

答案 2 :(得分:1)

    JSONObject holder = new JSONObject();
    JSONObject innerholder = new JSONObject();
    innerholder .put("Model", "C500");
    innerholder .put("ColorType", "Black");
    innerholder .put("DatePurchased", "1990");

    holder.put("BrandInfo", innerholder);
    holder.put("AutoMobileName", "Mercedes");
    holder.put("Engine", "V4");


StringEntity se = new StringEntity(holder.toString());
httpost.setEntity(se);