千家信息网

Scala中怎么解析Json格式

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,Scala中怎么解析Json格式,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。import scala.util.parsing.jso
千家信息网最后更新 2024年11月28日Scala中怎么解析Json格式

Scala中怎么解析Json格式,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

import scala.util.parsing.json._ //使用scala原生包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
import com.google.gson.{JsonObject, JsonParser}  //使用Gson包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

看完上述内容,你们掌握Scala中怎么解析Json格式的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0