Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Klaxon解析JSON的一部分?_Json_Kotlin_Klaxon - Fatal编程技术网

如何使用Klaxon解析JSON的一部分?

如何使用Klaxon解析JSON的一部分?,json,kotlin,klaxon,Json,Kotlin,Klaxon,我试图将一些JSON解析为kotlin对象。JSON看起来像: { data: [ { "name": "aaa", "age": 11 }, { "name": "bbb", "age": 22 }, ], otherdata : "don't need" } 我只需要数据整个JSON的一部分,并将每个项解析为用户对象: data class User(name:String, age:Int) 但是我找不到一个简单的方法来做到这一点

我试图将一些JSON解析为kotlin对象。JSON看起来像:

{
    data: [
        { "name": "aaa", "age": 11 },
        { "name": "bbb", "age": 22 },
    ],
    otherdata : "don't need"
}
我只需要
数据
整个JSON的一部分,并将每个项解析为
用户
对象:

data class User(name:String, age:Int)

但是我找不到一个简单的方法来做到这一点。

这里有一个方法可以做到这一点

import com.beust.klaxon.Klaxon
import java.io.StringReader

val json = """
    {
        "data": [
            { "name": "aaa", "age": 11 },
            { "name": "bbb", "age": 22 },
        ],
        "otherdata" : "not needed"
    }
""".trimIndent()

data class User(val name: String, val age: Int)

fun main(args: Array<String>) {
    val klaxon = Klaxon()
    val parsed = klaxon.parseJsonObject(StringReader(json))
    val dataArray = parsed.array<Any>("data")
    val users = dataArray?.let { klaxon.parseFromJsonArray<User>(it) }
    println(users)
}
import com.beust.klaxon.klaxon
导入java.io.StringReader
val json=“”
{
“数据”:[
{“姓名”:“aaa”,“年龄”:11},
{“姓名”:“bbb”,“年龄”:22},
],
“其他数据”:“不需要”
}
“.trimIndent()
数据类用户(val name:String,val age:Int)
趣味主线(args:Array){
val klaxon=klaxon()
val parsed=klaxon.parseJsonObject(StringReader(json))

val dataArray=parsed.array

这里有一种方法可以实现这一点

import com.beust.klaxon.Klaxon
import java.io.StringReader

val json = """
    {
        "data": [
            { "name": "aaa", "age": 11 },
            { "name": "bbb", "age": 22 },
        ],
        "otherdata" : "not needed"
    }
""".trimIndent()

data class User(val name: String, val age: Int)

fun main(args: Array<String>) {
    val klaxon = Klaxon()
    val parsed = klaxon.parseJsonObject(StringReader(json))
    val dataArray = parsed.array<Any>("data")
    val users = dataArray?.let { klaxon.parseFromJsonArray<User>(it) }
    println(users)
}
import com.beust.klaxon.klaxon
导入java.io.StringReader
val json=“”
{
“数据”:[
{“姓名”:“aaa”,“年龄”:11},
{“姓名”:“bbb”,“年龄”:22},
],
“其他数据”:“不需要”
}
“.trimIndent()
数据类用户(val name:String,val age:Int)
趣味主线(args:Array){
val klaxon=klaxon()
val parsed=klaxon.parseJsonObject(StringReader(json))

val dataArray=parsed.array

信息不足,请提供源代码和错误。信息不足,请提供源代码和错误。