一尘不染

如何在android中创建JSON格式的数据?

json

我需要将一些参数传递给服务器,我需要按照以下格式传递

{
  "k2": {
    "mk1": "mv1",
    "mk2": [
      "lv1",
      "lv2"
    ]
  }
}

那么如何在Android中生成这种格式。

我尝试使用如示例5.3中所示的方法,obj.writeJSONString(out);此行显示错误。任何人都可以帮助解决这个问题。

提前致谢


阅读 348

收藏
2020-07-27

共1个答案

一尘不染

并不是全部,您想要的输出是JSONObject内的JSONArray和另一个JSONObject内的JSONObject。因此,您可以单独创建它们,然后将它们放在一起。如下。

try {
            JSONObject parent = new JSONObject();
            JSONObject jsonObject = new JSONObject();
            JSONArray jsonArray = new JSONArray();
            jsonArray.put("lv1");
            jsonArray.put("lv2");

            jsonObject.put("mk1", "mv1");
            jsonObject.put("mk2", jsonArray);
            parent.put("k2", jsonObject);
            Log.d("output", parent.toString(2));
        } catch (JSONException e) {
            e.printStackTrace();
        }

输出-

       {
           "k2": {
             "mk1": "mv1",
             "mk2": [
               "lv1",
               "lv2"
             ]
           }
         }
2020-07-27