You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Circe将List转换为指定结构的JSON

解决方案

问号处需要传入Circe的JSON数组类型值,你可以用Json.arr搭配Json.fromFields构造目标数组内容,完整代码如下:

import io.circe.Json

val result = Json.fromFields(List(
  "items" -> Json.arr(
    // 第一个item对象
    Json.fromFields(List(
      "field1" -> Json.fromString("somevalue"),
      "field2" -> Json.fromString("somevalue2")
    )),
    // 第二个item对象
    Json.fromFields(List(
      "field1" -> Json.fromString("abc"),
      "field2" -> Json.fromString("123abc")
    ))
  )
))

如果你引入了circe-literal模块,还可以用更简洁的JSON字面量语法直接构造,不需要手动拼接结构:

import io.circe.literal._

val result = json"""{
  "items": [{
    "field1": "somevalue",
    "field2": "somevalue2"
  },
  {
    "field1": "abc",
    "field2": "123abc"
  }]
}"""

原理说明

  • Json.arr方法用于构造JSON数组,接收任意多个Json类型的元素作为参数
  • 数组内的每个JSON对象用Json.fromFields构造,接收键值对列表,值需要统一为Json类型,字符串值用Json.fromString包裹即可

内容的提问来源于stack exchange,提问作者Code Geek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 15:06:05