管理JSONObject的JsonObject入侵-Kotlin

时间:2019-12-24 10:29:18

标签: android json kotlin

我必须按如下所示制作jsonformat:

[
  "mon":{"start":"1","end":"10"},
  "tue":{"start":"1","end":"10"},
]

我必须使用 JsonArray 代替JSONArray,并使用 JsonObject 代替JSONObject。

我尝试过以下方法:

var mJsonArray=JsonArray()
var jsonObjectMonday:JsonObject=JsonObject()

jsonObjectMonday.addProperty("start",""+minValue.toString())
jsonObjectMonday.addProperty("end",""+maxValue.toString())

mJsonArray.add("mon",jsonObjectMonday)

在这里,最后一行给我:任何函数都不能使用指定的参数调用。

我必须通过密钥'mon',但是遇到了上述问题。 还有其他方法或方法吗? 如何?

注意:我可以不使用' mon '和'tue'选项卡/键,如下所示:

mJsonArray.add(jsonObjectMonday)

我想要如下:

    [
      "mon": {
               "start": "1",
               "end": "10"
             }
   ]

2 个答案:

答案 0 :(得分:2)

在上检查此json的验证 https://jsonformatter.curiousconcept.com/  有一个错误,所以我认为一定是

{
"mon":{"start":"1","end":"10"},
"tue":{"start":"1","end":"10"}
}

答案 1 :(得分:1)

您的json无效。尝试在下面使用以获取有效的json

var mJsonArray= JsonArray()
var jsonObject: JsonObject =JsonObject()

jsonObject.addProperty("start",""+minValue.toString())
jsonObject.addProperty("end",""+maxValue.toString())

var jsonObjectMonday: JsonObject =JsonObject()
jsonObjectMonday.add("mon",jsonObject)

mJsonArray.add(jsonObjectMonday)

输出:

[
  {
    "mon": {
      "start": "1",
      "end": "10"
    }
  }
]