首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >scala中使用circe的json解析

scala中使用circe的json解析
EN

Stack Overflow用户
提问于 2022-08-04 17:03:09
回答 1查看 46关注 0票数 2

我试图利用circe在scala中进行json解析。你能帮我解析一下案例类中的数据吗?以下是代码:

代码语言:javascript
复制
import io.circe.Decoder
import io.circe.generic.semiauto.deriveDecoder
import io.circe.parser

val json: String =
"""
{
    "segmements": [
        {
            "tableName": "X",
            "segmentName": "XX",
            "pocs": [
                "aa@aa.com",
                "bb@bb.com"
            ]
        },
        {
            "tableName": "Y",
            "segmentName": "YY",
            "pocs": [
                "aa@aa.com",
                "bb@bb.com"
            ]
        }
    ]
}
"""

final case class TableInfo(tableName: String, segmentName: String)
object TableInfo {
  implicit final val TableInfoDecoder: Decoder[TableInfo] = deriveDecoder
}

val result = for {
  data <- parser.parse(json)
  obj <- data.asObject.toRight(left = new Exception("Data was not an object"))
  segmements <- obj("segmements").toRight(left = new Exception("Json didn't had the 
segments key"))
  r <- segmements.as[List[TableInfo]]
} yield r

println(result)

链接:https://scastie.scala-lang.org/BalmungSan/eVEvBulOQwGzg5hIJroAoQ/3

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-04 17:26:07

只需添加作为String集合类型的参数

代码语言:javascript
复制
final case class TableInfo(tableName: String, segmentName: String, pocs: Seq[String])

鸡皮癣

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73239785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档