[英]How to parse JSON in Kotlin
如何在 Kotlin 中解析 JSON? 它从 JSON 获取整个数组,但无法从数组中获取特定对象。
它适用于 Java,但不适用于 Kotlin。
try {
val jsonObject = JSONObject(result)
val users = jsonObject.getJSONArray("Users")
for (i in 0 until users.length())
{
Toast.makeText(applicationContext,"Json Result is----"+result,Toast.LENGTH_LONG).show()
val obj = users.getJSONObject(i)
val name = obj.get("name").toString()
Toast.makeText(applicationContext, "User name: "+name , Toast.LENGTH_LONG).show();
}
}catch(e: JSONException){}
使用jsonObject.getString(paramName: String)
,而不是jsonObject.get(paramName: String).toString()
。
或者您也可以将此对象转换为字符串。 请参阅http://www.docjar.com/docs/api/org/json/JSONObject.html
最好和快速的做法是使用https://json2kotlin.com 等工具生成原生 Kotlin“数据类”,而不是手动检查每个键
因此,您的 API 响应变成了与 JSON 结构相对应的以下几个数据类:
data class Json4Kotlin_Base (
val users : List<Users>
)
和
data class Users (
val id : String,
val name : String,
val age : Int,
val gender : String,
val email : Email
)
和
data class Email (
val primary : String,
val secondary : String
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.