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

Har*_*ish 13 android json

我需要将一些参数传递给我需要传递的服务器,如下面的格式

{
  "k2": {
    "mk1": "mv1",
    "mk2": [
      "lv1",
      "lv2"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

那么如何在android中生成这种格式呢.

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

提前致谢

Lal*_*ani 39

尽管如此,你想要的输出是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();
        }
Run Code Online (Sandbox Code Playgroud)

输出 -

       {
           "k2": {
             "mk1": "mv1",
             "mk2": [
               "lv1",
               "lv2"
             ]
           }
         }
Run Code Online (Sandbox Code Playgroud)


Chr*_*CVB 6

您可以使用JSONObject它来构建数据.

这是文档链接

jsonObject.toString() // Produces json formatted object
Run Code Online (Sandbox Code Playgroud)