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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Restful api 防止重复提交

    Restful api 防止重复提交

    2021年11月6日
    48
  • 推荐四款非常好用的免费音乐播放器

    推荐四款非常好用的免费音乐播放器不知道大家在工作的时候,是不是跟我一样,喜欢听着自己熟悉的旋律,心情也会很好。但是,原来的很多经典歌曲,要么改收费一首歌几块钱、要么是翻唱的,听起来也没有原版好,对于我们这些只是偶尔听听歌的、写写东西的人来说,的确有点不方便。今天,小莫为大家挑选了四个,截止到目前还能正常使用,并且功能十分强大的音乐播放器,歌曲都是免费的,建议低调收藏。1、音乐社一款很简洁的音乐播放器,涵盖了主流播…

    2022年6月26日
    135
  • [linux] linux 复制文件夹/文件到指定位置 cp -r和cp -r -d[通俗易懂]

    1.cp-r移动子目录和根目录到指定文件夹将test文件夹移动到video内!cp-r./test./video操作后存在./video/test2.cp-r-d移动所有子目录到指定文件夹将所有子目录移动到指定位置如structuring内存在a,b,c,三个文件夹./structuring/a./structuring/b./structuring/c!cp-r-d./structuring/*./则操作后存在./a./b./c…

    2022年4月13日
    93
  • .net 常用开源框架

    .net 常用开源框架Json.NETCodePlexArchiveJson.Net是一个读写Json效率比较高的.Net框架.Json.Net使得在.Net环境下使用Json更加简单。通过LinqToJSON可以快速的读写Json,通过JsonSerializer可以序列化你的.Net对象。让你轻松实现.Net中所有类型(对象,基本数据类型等)和Json的转换。Math.NETMath.NETMath.NET的目标是为提供一款自身包含清晰框架的符号运算和数学运算/科学运算,它是C#开发的开.

    2022年7月15日
    20
  • 哪些软件是python编写出来的_用Python编程需要什么软件?

    哪些软件是python编写出来的_用Python编程需要什么软件?用Python编程需要什么软件?Python编程是一门适合新手入门的编程语言,现在有不少程序员业余时间学习Python编程语言,学习Python找到好工具会大大提高学习的效率。好用的Python编程软件能将工作效率多倍速提升。今天小编就介绍一些Python编程软件供大家参考:一、终端:UptermUpterm简单好用,它是一个全平台的终端,可以说是终端里的IDE,有着强大的自动补全功能。二、交互式…

    2022年5月23日
    66
  • 超全,7种经典推荐算法模型及应用

    超全,7种经典推荐算法模型及应用本文调研了推荐系统里的经典推荐算法,结合论文及应用进行分析、归纳并总结成文,既是自己的思考过程,也可当做以后的翻阅手册。前言个性化推荐,是指通过分析、挖掘用户行为,发现用户的个性化需求与兴趣特点,将用户可能感兴趣的信息或商品推荐给用户。本文调研了推荐系统里的经典推荐算法,结合论文及应用进行分析、归纳并总结成文,既是自己的思考过程,也可当做以后的翻阅手册。俗话说学而时习之,人的认识过程是呈螺旋式上升的,特别是理论应用到实践的过程,理论是实践的基础,实践能反过来指导人对理论的认识,我相信在将下文所述的算法应

    2022年6月23日
    32

发表回复

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

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