如何将数组存储到JSON对象中?

时间:2014-05-08 21:23:53

标签: java json jsonp org.json

我有以下对象:

  • server:字符串
  • products:将是服务器中的数组
  • productProperties:将是产品中的数组

以下是以JSON格式存储值的正确方法吗?

JSONOBJECT jmap = new JSONOBJECT();


jsonArray jproduct = new jsonArray ();


jsonArray jproductsProperty1 = new jsonArray ();
jproductsProperty1  .put("P1");
jproductsProperty1  .put("P2");

jsonArray jproductsProperty2 = new jsonArray ();
jproductsProperty2  .put("Q1");
jproductsProperty2  .put("Q2");


jproduct.put(jproductsProperty1);
jproduct.put(jproductsProperty2);
jmap.put(server,jproduct);

out.print(jmap.toString());

2 个答案:

答案 0 :(得分:0)

第一个参数只是一个键,第二个它的对象可能是一个像数组一样的集合

JSONOBJECT jmap = new JSONOBJECT();

jsonArray jproductsProperty1 = new jsonArray ();
jproductsProperty1.put("P1");
jproductsProperty1.put("P2");

jsonArray jproductsProperty2 = new jsonArray ();
jproductsProperty2.put("Q1");
jproductsProperty2.put("Q2");

jmap.put("jproductsProperty1", jproductsProperty1 );

jmap.put("jproductsProperty2", jproductsProperty2 );

答案 1 :(得分:0)

好吧,我想我需要在这里使用两张地图......就像这样

JSONObject jmap1 = new JSONObject();

    JSONObject jmap2 = new JSONObject();

    JSONArray jproduct = new JSONArray();


    JSONArray jproductsProperty1 = new JSONArray();
    jproductsProperty1  .put("P1");
    jproductsProperty1  .put("P2");

    JSONArray jproductsProperty2 = new JSONArray();
    jproductsProperty2  .put("Q1");
    jproductsProperty2  .put("Q2");


    jproduct.put(jproductsProperty1);
    jproduct.put(jproductsProperty2);
    jmap2.put("jproductsProperty1", jproductsProperty1 );

    jmap2.put("jproductsProperty2", jproductsProperty2 );
    jmap1.put("A",jmap2);
    System.out.println(jmap1);