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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • windows pip 安装 whl文件

    windows pip 安装 whl文件在安装之前,一直比较迷惑究竟如何用,安装完后,发现竟然如此简单!首先我一般用的是python27,官网下载python27msi安装window764位后,已经自带了Pip和easy_install但是却不晓得如何安装whl目录,经过搜索后发现,把pip和easy_install加入到环境变量中,就可以便捷使用了。1、先找到python的安装目录,以及pip工具所在目录:2、将目录加入环境…

  • linux 内存信息_shell查看内存使用情况

    linux 内存信息_shell查看内存使用情况pmaplddstace要熟悉的几个调试命令!两个查看内存的文件$cat/proc/&lt;pid&gt;/stat|awk'{print$23/1024}’$cat/proc/&lt;pid&gt;/status|grep-ivmsize其中,关于内存的是VSZ和RSS这两个概念manps看看它们的含义:rss       RSS    resident…

    2022年10月28日
  • Java之StringUtils的常用方法

    Java之StringUtils的常用方法StringUtils方法的操作对象是 Java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理,例如,如果输入为null则返回也是null等,具体可以查看源代码)。除了构造器,StringUtils…

  • Java基础篇:多重继承的实现

    Java基础篇:多重继承的实现

  • LDR命令

    LDR命令  LDR指令用于从内存中将一个32位的字读取到指令中的目标寄存器中,如果目标寄存器为PC,则可以实现“长”跳转。主要有一下3种方式使用:ldrr0,_startldrr0,=_startldrpc,_start  逐条分析:一、ldrr0,_start  从内存地址_start的地方,把其对应的命令执行对应的“执行码”读入到r0中。二、ldrr0,=_start  …

  • 再淡spring jdbc 连接池断开重连设置

    再淡spring jdbc 连接池断开重连设置

发表回复

您的电子邮箱地址不会被公开。

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