【发布时间】:2016-10-09 13:30:30
【问题描述】:
我正在使用 json4s 将 json 解析为我的 scala 案例类对象,第一个效果很好:
case class Person(Id: String, name: String)
val personJSON = """[ {"Id": "1","name": "john"},
{"Id": "2","name": "george"},
{"Id": "3","name": "tom"},
{"Id": "4","name": "tammy"},
{"Id": "5","name": "melanie"} ]""".stripMargin
val listOfPersonAsObjects = JsonMethods.parse(personJSON).extract[List[Person]]
完美运行,没问题。
但现在 json 是其中包含对象的一个:
case class Animal(name: String, age: String)
val animalsJSON = """{ "animals":[ {"name": "giraffe","age": "12"},
{"name": "lion","age": "4"},
{"name": "snake","age": "5"},
{"name": "tiger","age": "3"},
{"name": "elephant","age": "7"}] }""".stripMargin
所以现在我需要解析 json 中的“animals:”对象...
我的想法是这样的:
val listOfAnimalsAsObjects = JsonMethods.parse(animalsJSON[0]).extract[List[Animal]]
但它不起作用...如何指定我想要 json 中的“动物:”对象?
我无法更改 json,这正是我得到它的方式
谢谢!
【问题讨论】: