如何为这个json输入构造一个case类并将其转换为一个对象?

时间:2016-05-16 19:46:12

标签: scala spray-json

我从网络API获取此Json字符串:

{"results":{"Inne":"23.3","Ute":"5.8"}}

如何构造一个案例类来匹配此输出?

这是我的尝试:

case class Results(Inne: String, Ute: String)

object MyJsonProtocol extends DefaultJsonProtocol {
  implicit val tempsFormat = jsonFormat2(Results)
}

我尝试使用val temps = jsonin.convertTo [Results]进行转换,显然这不起作用,因为它只需要两个值。

1 个答案:

答案 0 :(得分:1)

case class Results(Inne: String, Ute: String )
case class Result(results: Results)
object MyJsonProtocol extends DefaultJsonProtocol {
    implicit val tempsFormat = jsonFormat2(Results)
    implicit val resultsFormat = jsonFormat1(Results)
}

或者你可以使用镜片https://github.com/jrudolph/json-lenses

case class Results(Inne: String, Ute: String )
object MyJsonProtocol extends DefaultJsonProtocol {
    implicit val tempsFormat = jsonFormat2(Results)
    implicit val resultsFormat = jsonFormat1(Results)
}

jsonin.extract[Results]('results)