我有一个jsonArray对象,例如下面的“ Input”。我想要“输出”。你能帮我吗?
输入:
"["a", "b", "c", "d"]"
输出:
["a", "b", "c", "d"]
//i need a simple list of string
我找到了一个解决方案,但是对于简单的转换来说太复杂了。...
val errorFields = jsonResponse.getJSONArray("my_array")
.join(",")
.replace("\"", "")
.split(",")
答案 0 :(得分:1)
通过手动解析,您可以通过-
从jsonArray获取字符串列表。val list = ArrayList<String>()
repeat(jsonArray.length){
list.add(jsonArray.getString(it))
}
如果您正在使用gson解析库,则可以通过-
获取字符串列表val list = gson.fromJson(jsonArray.toString(), Array<String>::class.java)?.toList()
答案 1 :(得分:0)
您可以这样做:
val stringList : MutableList<String> = arrayListOf()
jsonArray?.let {
for (i in 0 until it.length()) {
stringList.add(jsonArray.getString(i))
}
答案 2 :(得分:0)
您可以在Koltin中这样做
var str = "[\"a\", \"b\", \"c\", \"d\"]"
var items = Arrays.asList(str?.split("\\s*,\\s*")).flatten()
flatten
是必需的,因为它会返回列表列表。