大家好,又见面了,我是你们的朋友全栈君。
kotlin解析json文件
第一步:首先导入KlaXon库,官网地址是:https://github.com/cbeust/klaxon
导入成功后我们将试着编译一个Json资源
创建Gradle 项目 导入包
repositories {
jcenter()
}
dependencies {
implementation ‘com.beust:klaxon:5.0.1’
}
完成导入工作就可以使用了
第二步:编译开始
val JsonObjec = json{
obj(“name” to “zhangsan” , “age” 33)} 这是第一种创建方式 类似{ “name”:“zhangsan” “age”=30}
JsonObjec.put(“sex”,flast) 这是第二种创建方式,类型{“sex”:flast}
val list = listOf(1,3)
JsonObject.put(a,list) 数组的创建方式,类似{“a”:[1,3]} 可以实现多重嵌套
到现在编码已经完成,打印出来到就是一个完整到json格式
如果是要解析Json文件,其实很简单!需要创建Parser具体看代码即可
//创建了原始字符串
val objectString = “””{
“name” : “Joe”,
“age” : 23,
“flag” : true,
“array” : [1, 3],
“obj1” : { “a” : 1, “b” : 2 }
}”””
val parser = Parser.default
var stringParser = parser.parser(StringBuilder(objectString)) 解析其实已经完成了
stringParser.string(“name”) 打印出来就是 Joe
stringParser.toJsonString 打印就是完整到json文件
但是如果我们要取出array里面到1,3里面到数值,还需一些操作
val JsonAry = stringParser.array< Int >(“array”) as JsonArray< Int > 如果确定是返回这个对象可以写as
取出数值是 JsonArt[0] 取出来到就是1 ,依此类推
但是如果要取出obj1到数据昵
我们需要执行
val jsonobj1 = stringPraser.obj(“obj1”) as JsonObject 得到这个就非常到简单能取出数字了
obj1对应到a和b是一个int数值,那我们可以使用int方法取出
val int1 = jsonobj1.int(“a”) 这样我们就得到数值1了 ,b的得到方法也是一样的
就这样我们完成了编码json和解析json了。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/127332.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...