我是Scala的初学者,我的JSON数据格式如下:
{
"index_key": {
"time":"12938473",
"event_detail": {
"event_name":"click",
"location":"US"
}
}
}
我正在尝试获取“index_key”的内容,将第二级内容提取为新的JSON对象,并根据第二级数据启动一个类。
{
"time":"12938473",
"event_detail": {
"event_name":"click",
"location":"US"
}
}
我尝试使用 json4s 从上面的json中提取出一个Event类,但是如何摆脱作为第一级键的“index_key”?
case class Detail(event_name: String, location: String)
case class Event(time: String, event_detail: Detail)
json.extract[Event]
我已经阅读了json4s文档,还有http://www.scala-lang.org/api/2.10.3/index.html#scala.util.parsing.json.JSON $,但仍然没有得到它,因为看起来预定义的json应该适合解析器?
有谁能告诉我如何获得json结构的二级数据(或任何更低级别)?
答案 0 :(得分:3)
您可以使用\
来获取要提取的对象:
val json = parse(str) \ "index_key"
json.extract[Event]