【发布时间】:2021-11-27 09:24:09
【问题描述】:
我是 Scala 新手,我需要根据两种情况弄清楚如何处理 JSON。
首先是我收到这样一个 JSON 的地方:
{..."field":[{"count":1,"value":"foo"}]...}
第二种情况是我收到这种 JSON:{..."field":"foo"...}
我无法确定每个 JSON 何时会进入(它是随机的)。在这两种情况下,我都需要获取 field 值并将其作为字符串存储到单独的 JSON 中。第二种情况很明显,因为它已经是一个字符串,但我不知道如何确定这个字段是数组还是字符串,如果是数组,然后从其中的 JSON 获取"foo"。我知道如何访问field,因为它是一个游标:val field = cursor.downField("foo").downField("bar").downField("lorem").downField("field")
下面是我的方法不起作用的示例:
if (field.asInstanceOf[String]) {
rowFiltered.set("field", field.as[String])
} else {
rowFiltered.set("field", field.as[Seq[field[0]]])
}
我们将不胜感激帮助确定和分配。
【问题讨论】:
-
看起来应该是
isInstanceOf而不是asInstanceOf但也许这是一个错字。