如何使用gson.Json()防止或删除双引号?

时间:2018-11-19 04:48:25

标签: android json

我只想问将JSONObject插入JSONArray时如何删除或防止双引号

这是我的示例代码:

data class Profile(
    @SerializeName("id")
    val id,

    @SerializeName("name")
    val name
)

fun sendProfile() {
    val map = HashMap<String, String>

    val gson = Gson()
    val jsonArray = JSONArray()

    profileList.forEach {
        jsonArray.put(gson.toJson(it))
    }

    map["DATA"] = jsonArray.toString()
    Log.i(TAG, "map=$map")
}

当我使用gson.toJson()时,输出为

{DATA=["{\"id\":\"id1\",\"name\":\"name1\"]}

但是当我不使用gson.toJson()并更改为

fun sendProfile() {
    val map = HashMap<String, String>

    val gson = Gson()
    val jsonArray = JSONArray()

    profileList.forEach {
        // jsonArray.put(gson.toJson(it))
        val jsonObject = JSONObject()
        jsonObject.put("id", it.id)
        jsonObject.put("name", it.name)
        arr.put(jsonObject)
    }

    map["DATA"] = jsonArray.toString()
    Log.i(TAG, "$map")
}

输出是

{DATA=[{"id":"id1","name":"name1"}]}

我想要的是没有双引号的json。

感谢您的帮助,谢谢。

0 个答案:

没有答案