当前位置:网站首页>Kotlin之JSON格式解析
Kotlin之JSON格式解析
2022-08-08 20:26:00 【不忘初衷z】
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了。
边栏推荐
猜你喜欢
CVPR 2022 ActivityNet竞赛冠军:中科院深圳先进院提出高低分双模态行为识别框架
接口测试经典面试题:Session、cookie、token有什么区别?
我们仍未知道那天踩的MultipartFile file为null的大坑是为什么
“12306” 的架构到底有多牛逼?
com.alibaba.fastjson.JSONException: default constructor not found. class
Ansible自动化运维工具(一)安装及模块
SushiSwap「SUSHI」下降了 93%,但还没有完全消失
openEuler 资源利用率提升之道02:典型应用下的效果
数据解读!智能座舱“升级战”背后,本土供应链加速崛起
【无标题】
随机推荐
JMeter测试接口并发场景
内网渗透之代理转发
实践篇2:深度学习之----LetNet之tensorflow2的实现
PHP使用glob()查找文件
学习笔记:第二部分 队列
学习笔记:栈的应用1_递归(重点)
Yarn 总结(未完待续)
西湖大学鞠峰组招聘【塑料降解 / 污水工程 / 微生物学】方向博士后和科研助理...
The WPF main form calls User32's SetWindowPos to set the form to the top, which will cause the problem of grabbing the focus with other forms
五大理由告诉你为什么开发人员选择代码质量静态分析工具Klocwork来实现软件安全
网络工程师怎么系统性学习?这份网工资料包帮你解决
LitJson使用中的一些问题
正则表达式的限定符、或运算符、字符类、元字符、贪婪/懒惰匹配
学习笔记:第三章 栈与队列
Mendix:企业成功执行数字化转型的9个因素
技术分享活动
用 Antlr 重构脚本解释器
知乎高赞:如果一个程序员工作5年后还没成为大牛,是不是该考虑别的路子了?
Matlab用回归、SEIRD模型、聚类预测美国总统大选、新冠疫情对中美经济的影响
JSD-2204-Session-Token-JWT-Day12