zoukankan      html  css  js  c++  java
  • Scala解析Json格式

     

    Scala解析Json格式

    代码块

    • Scala原生包

        导入包    

        import scala.util.parsing.json._
     1   def main(args: Array[String]): Unit = {
     2 
     3     def regJson(json:Option[Any]) = json match {
     4       case Some(map: Map[String, Any]) => map
     5 //      case None => "erro"
     6 //      case other => "Unknow data structure : " + other
     7     }
     8     val str = "{"host":"td_test","ts":1486979192345,"device":{"tid":"a123456","os":"android","sdk":"1.0.3"},"time":1501469230058}"
     9     val jsonS = JSON.parseFull(str)
    10     val first = regJson(jsonS)
    11     // 获取一级key
    12     println(first.get("host"))
    13     // 获取二级key
    14     val dev = first.get("device")
    15     println(dev)
    16     val sec = regJson(dev)
    17     println(sec.get("tid").toString.replace("Some(","").replace(")",""))
    18   }

    运行结果

    Some(td_test)
    Some(Map(tid -> a123456, os -> android, sdk -> 1.0.3))
    a123456

     

    • GSON包

        导入包    

        import com.google.gson.{JsonObject, JsonParser}
     1 def main(args: Array[String]): Unit = {
     2 
     3     gson("{"host":"td_test","ts":1486979192345,"device":{"tid":"a123456","os":"android","sdk":"1.0.3"},"time":1501469230058}")
     4 
     5   }
     6 
     7   def gson(str: String) ={
     8     val json = new JsonParser()
     9     val obj = json.parse(str).asInstanceOf[JsonObject]
    10     println(obj.get("device"))
    11     println(obj.get("ts"))
    12   }

    运行结果:

    {"tid":"a123456","os":"android","sdk":"1.0.3"}
    1486979192345

  • 相关阅读:
    普通线程类获取service,controller等spring容器类
    java拦截器获取请求完整参数
    分享几个免费IP地址查询API接口
    echarts热力地图
    echarts ajax请求demo
    mysql统计前24小时数据没有补0
    java获取来访者mac信息
    java获取本机mac物理地址
    mysql5.7以上基本配置
    springboot拦截异常信息发送邮件提醒
  • 原文地址:https://www.cnblogs.com/anitinaj/p/7278726.html
Copyright © 2011-2022 走看看