Scala解析Json格式
2024-09-05 18:54:07
Scala解析Json格式
代码块
Scala原生包
导入包
import scala.util.parsing.json._
def main(args: Array[String]): Unit = { def regJson(json:Option[Any]) = json match {
case Some(map: Map[String, Any]) => map
// case None => "erro"
// case other => "Unknow data structure : " + other
}
val str = "{\"host\":\"td_test\",\"ts\":1486979192345,\"device\":{\"tid\":\"a123456\",\"os\":\"android\",\"sdk\":\"1.0.3\"},\"time\":1501469230058}"
val jsonS = JSON.parseFull(str)
val first = regJson(jsonS)
// 获取一级key
println(first.get("host"))
// 获取二级key
val dev = first.get("device")
println(dev)
val sec = regJson(dev)
println(sec.get("tid").toString.replace("Some(","").replace(")",""))
}
运行结果
Some(td_test)
Some(Map(tid -> a123456, os -> android, sdk -> 1.0.3))
a123456
GSON包
导入包
import com.google.gson.{JsonObject, JsonParser}
def main(args: Array[String]): Unit = { gson("{\"host\":\"td_test\",\"ts\":1486979192345,\"device\":{\"tid\":\"a123456\",\"os\":\"android\",\"sdk\":\"1.0.3\"},\"time\":1501469230058}") } def gson(str: String) ={
val json = new JsonParser()
val obj = json.parse(str).asInstanceOf[JsonObject]
println(obj.get("device"))
println(obj.get("ts"))
}
运行结果:
{"tid":"a123456","os":"android","sdk":"1.0.3"}
1486979192345
最新文章
- js+html5双人五子棋(源码下载)
- delphi xe4 ini文件不能读取的解决方法
- PAT 1067. Sort with Swap(0,*)
- docker offical docs:Working with Docker Images
- AI编辑SVG格式的相关问题
- Liunx 配置IDE
- WPF多线程问题
- 大数据学习(8)Hive基础
- c++项目范例
- wifi破解基础及工具的使用
- vim8.0模式详解
- re:从零开始的数位dp
- c# 封装Dapper操作类
- TensorFlow 生成 .ckpt 和 .pb
- Linux-- 查看文件 more与其它
- Linux的权限对于文件与目录的意义
- 机器学习(Machine Learning)
- [BZOJ5120] [2017国家集训队测试]无限之环
- Routing in ASP.NET Web API
- 外部jar包 @Service 无法注解无法扫描问题
热门文章
- 对象的属性类型 和 VUE的数据双向绑定原理
- ASP.NET MVC5 之 客户端实现文件的下载
- Manacher HDOJ 5371 Hotaru's problem
- 398 Random Pick Index 随机数索引
- 378 Kth Smallest Element in a Sorted Matrix 有序矩阵中第K小的元素
- RabbitMQ二:AMQP协议
- 第5章分布式系统模式 Singleton
- 总结esp8266刷Python的完整的步骤(终极总结)
- python自动化--mock、webservice及webdriver模拟手机浏览器
- TF实战:(Mask R-CNN原理介绍与代码实现)-Chapter-8