雖然scala.util.parsing.json.JSON運作良好,最好使用外接像json4s這樣的庫,它有一個流暢的scala api。
您可以像查詢xml一樣查詢json(如JsonPath)。
下面是如何在您的項目中使用json4s以滿足您的需求的步驟。
首先做
val jsonA = """[{"foo": 4, "bar": "baz"},{"bla": 4, "bar": "bla"}]"""
val json = parse(jsonA)
您的JSON對象添加以下進口
import org.json4s._
import org.json4s.native.JsonMethods._
現在創建一個Jvalue是
json: org.json4s.JValue = JArray(List(JObject(List((foo,JInt(4)), (bar,JString(baz)))), JObject(List((bla,JInt(4)), (bar,JString(bla))))))
爲了得到第一個(0)級子
val firstChild = (json)(0)
firstChild: org.json4s.JsonAST.JValue = JObject(List((foo,JInt(4)), (bar,JString(baz))))
要獲得這個字符串表示則firstChild
val firstChildString = compact(render(firstChild))
firstChildString: String = {"foo":4,"bar":"baz"}
請參閱部分查詢JSON在json4s主頁瞭解更多。
注:導入您可以使用Maven/gradle這個或使用它們導入到斯卡拉REPL罐子:需要命令。
您使用哪個庫進行json解析? –
parseFull來自scala.util.parsing.json.JSON包 – Samar
是,'scala.util.parsing.j son.JSON'包。我只是想'sJson' obj [0],obj [1] ..等 –