Kotlin之JSON格式解析

kotlin解析json文件第一步:首先导入KlaXon库,官网地址是:https://github.com/cbeust/klaxon导入成功后我们将试着编译一个Json资源第二步:编译开始valJsonObjec=json{obj(“name”to“zhangsan”,“age”33)}这是第一种创建方式类似{“name”:“zhangsan”“age”=3…

大家好,又见面了,我是你们的朋友全栈君。

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了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127332.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 简单介绍一下spring bean的生命周期_Spring bean的生命周期

    简单介绍一下spring bean的生命周期_Spring bean的生命周期一、简介   SpringBean的生命周期在整个Spring中占有很重要的位置,从BeanFactory或ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一个实例,而不是每次都产生一个新的对象使用Singleton模式产生单一实例,在spring中,singleton属性默认是true,只有设定为false,则每次指定别名取…

    2026年1月24日
    4
  • 决策树原理及使用_虹吸原理图解

    决策树原理及使用_虹吸原理图解1.树模型和线性模型的区别树形模型是一个一个特征进行处理线性模型是所有特征给予权重相加得到一个新的值2.什么是决策树所谓决策树,就是一个类似于流程图的树形结构,树内部的每一个节点代表的是对一个特征的测试,树的分支代表该特征的每一个测试结果,而树的每一个叶子节点代表一个类别。树的最高层是就是根节点。下图即为一个决策树的示意描述,内部节点用矩形表示,叶子节点用椭圆表示。3.学习过程**特征选择:**特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选

    2025年9月5日
    6
  • c语言移位操作

    c语言移位操作

    2021年12月17日
    54
  • 3500元计算机基本硬件配置清单,电脑硬件中配配置清单

    3500元计算机基本硬件配置清单,电脑硬件中配配置清单电脑硬件中配配置清单导语:攒机一直是电脑爱好者热衷的事,自己选购各配件,组装一台适合自己要求的机器给很多DIYer带来了极大的欢乐。下面小编为你整理的电脑硬件中配配置清单,希望对你有所帮助!电脑硬件中配配置清单1、实用性机型建议:首选1:intelG1620双核+H61M主板。(价格低廉性能不弱,超值!)首选2:intelG1840双核+H81M主板。(核心显卡性能比G1620更强)2、中级机…

    2022年7月12日
    15
  • vue(16)vue-cli创建项目以及项目结构解析[通俗易懂]

    vue(16)vue-cli创建项目以及项目结构解析[通俗易懂]vue-cli创建项目上一篇我们安装了vue-cli,接下来我们就使用该脚手架进行创建项目1.进入一个目录,创建项目创建项目命令如下:vuecreate<ProjectName&g

    2022年7月31日
    19
  • no default or ui configuration_android:windowSoftInputMode

    no default or ui configuration_android:windowSoftInputMode#Error:DefaultinterfacemethodsareonlysupportedstartingwithAndroidN(–min-api24):voidandroidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)解决方案:在你的app的b…

    2025年9月17日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号