scala - 如何使用 Circe 删除对象列表中的空值

标签 scala circe

我正在尝试使用 Circe 对对象列表进行编码,看起来类似于:
val test = Seq(MyObject("hello", None, 1, 2, None)
我正在尝试使用 Circe 解析它:
test.asJson
但这会创建 JSON 对象:

[
  {
    name: "hello",
    someVal: null,
    someNum: 1,
    anotherNum: 2,
    anotherVal: null
  }
]

我试过运行 asJson.dropNullValues ,但这似乎并没有访问对象内部的空值。有没有办法删除对象内的空值?

我期待更像这样的东西:
[
  {
    name: "hello",
    someNum: 1,
    anotherNum: 2
  }
]

最佳答案

尝试 test.asJson.deepDropNullValues

关于scala - 如何使用 Circe 删除对象列表中的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60209657/

相关文章:

scala - 如何将已包含一些 Json 的 Scala 对象序列化为 Json

json - 如何配置 Circe 以停止使用嵌套类名作为编码 JSON 中的键名?

scala - 从 Scala Breeze 中的文件中读取矩阵

scala - 值isBlank不是String的成员

java - 为什么运行带有 "./"前缀的 sbt?它不起作用

scala - 仅当数组输入的大小为 1 时,函数才返回错误值

scala - HList参数为HNil时如何对Json进行编码?

scala - 在Scala中使用circe在一行中打印json字符串

json 具有默认值的通用解码器使用带有 circe 的 scala

scala - For Comprehension 中对 future 的错误理解