【发布时间】:2019-05-19 00:54:54
【问题描述】:
我的代码大致如下:
val json: Json = parse("""
[
{
"id": 1,
"type": "Contacts",
"admin": false,
"cookies": 3
},
{
"id": 2,
"type": "Apples",
"admin": false,
"cookies": 6
},
{
"id": 3,
"type": "Contacts",
"admin": true,
"cookies": 19
}
]
""").getOrElse(Json.Null)
我正在使用 Circe、Cats、Scala、Circe-json 等,Parse 调用成功。
我想返回一个列表,其中 type="Contacts" 的每个顶级对象都完整显示。
类似: List[String] = ["{"id": 1,"type": "Contacts","admin": false,"cookies": 3}","{"id": 3,"type": "Contacts ","admin": true,"cookies": 19}"]
背景是我在磁盘上有大型 JSON 文件。我需要过滤掉与某个type= 值匹配的对象子集,在本例中为type=Contacts,然后将它们从json 文件的其余部分中拆分出来。我不打算修改文件,我更希望 grep 匹配对象并相应地处理它们。
谢谢。
【问题讨论】: