ScalaでJSONを扱うために利用できるさまざまなライブラリがあります。私はちょうど最近circeを使用しており、非常にそれをお勧めすることができます。 opticsと組み合わせてJSONを簡単にトラバースして変更することができます。 (ウェブサイトからコピーされた例):また、ケースクラスからの/秘密のJSONオブジェクトへのエン/デコーダを定義したり、定型のない一般的な導出を使用することができます
import cats.syntax.either._
import io.circe._, io.circe.parser._
val json: Json = parse("""
{
"order": {
"customer": {
"name": "Custy McCustomer",
"contactDetails": {
"address": "1 Fake Street, London, England",
"phone": "0123-456-789"
}
},
"items": [{
"id": 123,
"description": "banana",
"quantity": 1
}, {
"id": 456,
"description": "apple",
"quantity": 2
}],
"total": 123.45
}
}
""").getOrElse(Json.Null)
import io.circe.optics.JsonPath._
// import io.circe.optics.JsonPath._
val _phoneNum = root.order.customer.contactDetails.phone.string
// _phoneNum: monocle.Optional[io.circe.Json,String] = [email protected]
val phoneNum: Option[String] = _phoneNum.getOption(json)
// phoneNum: Option[String] = Some(0123-456-789)
。
ありがとうございました.Jsonファイルの読み方を教えてください。 –
スカラー 'Source.fromFile'またはjava' Files.readAllBytes'と組み合わせたjson4sの 'parse'を使用します。' parse(Source.fromFile( "blah.json")。mkString)) ' –