我有两个Json对象。通过使用Scala,如何合并这两者?

我有两个Json对象。通过使用Scala,如何合并这两者?,json,scala,gson,Json,Scala,Gson,和combinedJson应该是 val jsonReq = {"name":"Scott", "age":"33"} val jsonRes = {"name":"Scott", "location":"London"} 在Scala我不知道这个,因为我是新手 有人可以帮忙吗?您可以使用库来处理Json val combinedJso

combinedJson
应该是

val jsonReq = {"name":"Scott", "age":"33"}
val jsonRes = {"name":"Scott", "location":"London"}
在Scala我不知道这个,因为我是新手

有人可以帮忙吗?

您可以使用库来处理Json

val combinedJson = {"name":"Scott", "age":"33", "location":"London"}
输出将是:

import org.json4s._
import org.json4s.native.JsonMethods._


val a = parse(""" {"name":"Scott", "age":33} """)
val b = parse(""" {"name":"Scott", "location":"London"} """)

val c = a merge b
println(c.toString)

println(c \ "name")
println(c \ "age")
println(c \ "location")


implicit val formats = DefaultFormats

val name: String = (c \ "name").extract[String]
println(s"name: $name")

val age: Int = (c \ "age").extract[Int]
println(s"age: $age")

case class Person(name: String, age: Int, location: String)
val p = c.extract[Person]
println(p)
使用该库安全解析和合并JSON对象

  • build.sbt
    中添加依赖项:
  • 添加所需的导入:
  • 解析输入JSON值并打印合并的JSON值:
  • 它将输出:

    val jsonReq = parse("""{"name":"Scott", "age":"33"}""")
    val jsonRes = parse("""{"name":"Scott", "location":"London"}""")
    val jsonMerged = jsonReq ++ jsonRes
    println(jsonMerged)
    

    当心:Json4s是!嘿,萨提亚,你已经得到了一些很好的答案。这是下一次:谷歌搜索scala中的json库可以为教程提供非常好的结果。在那里阅读一些文档。你自己试试看。scastie是一个很好的资源,可以在不安装任何东西的情况下尝试东西。告诉我们您已经尝试了什么,以及为什么它不起作用。那么人们也更倾向于对你的问题投赞成票。希望你将来有更多的好问题。
    libraryDependency += "com.github.pathikrit" %% "dijon" % "0.3.0"
    
    import scala.language.dynamics._
    import com.github.pathikrit.dijon._
    
    val jsonReq = parse("""{"name":"Scott", "age":"33"}""")
    val jsonRes = parse("""{"name":"Scott", "location":"London"}""")
    val jsonMerged = jsonReq ++ jsonRes
    println(jsonMerged)
    
    {"name":"Scott", "age":"33", "location":"London"}