scala - 用 lihaoyi ujson 处理可选字段

标签 scala upickle

我想使用 upickle library 的 ujson从 json 文档中提取可选字符串。在某些文档中 json 字段存在,而在其他文档中不存在。

当访问该字段并且该字段不存在时,我得到一个 NoSuchElementException:

val json = ujson.read(jsonString)
json("attributename").str

results in: java.util.NoSuchElementException: key not found: attributename

在 ujson 中处理可选 json 属性的惯用方法是什么?

最佳答案

如果你想在任何异常情况下返回默认值,你可以使用 TrygetOrElse :

val result = Try(json("attributename").str).getOrElse("defaultValue")

结果将为 attributename 的值键或 defaultValue如果没有这样的键,则为字符串。

关于scala - 用 lihaoyi ujson 处理可选字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55061072/

相关文章:

scala - 如何在Scala中的过滤器, map ,flatMap期间轻松地从一种集合类型转换为另一种集合类型?

scala - 如何使用 uPickle 将案例类序列化/反序列化为 js.Dynamic

scala - 使用 µPickle 序列化多态类型

scala - uPickle 和 ScalaJS : sealed trait serialisation

Scala 隐式生成器

scala - 未找到 HIVE 表

scala - 如何欺骗 Scala 不为 Nothing 找到重复的隐式

用于数据科学应用程序的 Scala IDE(如 RStudio/Spyder/Rodeo)