尝试读取和转换输入文件具有以下内容的JSON文件:
{
"id": “A9”,
"roles": [
{"title": “A”, “type”: “alpha” },
{"title": “B”, “type”: “beta” },
]
},
{
"id": “A10”,
"roles": [
{"title": “D”, “type”: “delta” },
]
}, 但是,需要对一个库进行转换,该库要求相同级别的值:
{
"roles": [
{"id": “A9”, "title": “A”, “type”: “alpha” },
{"id": “A9”, "title": “B”, “type”: “beta” },
]
},
{
"roles": [
{"id": “A10”, "title": “D”, “type”: “delta” },
]
}, 我能够用JsonSlurper读取输入,但仍然坚持如何去修饰它。
发布于 2017-05-07 22:16:43
使用这个data.json (注意,我必须清除后面的逗号,因为Groovy的JSON解析器将不接受它们):
{
"records":[{
"id": "A9",
"roles": [
{"title": "A", "type": "alpha" },
{"title": "B", "type": "beta" }
]
},
{
"id": "A10",
"roles": [
{"title": "D", "type": "delta" }
]
}]
}你可以这样做:
def parsed = new groovy.json.JsonSlurper().parse(new File("data.json"))
def records = parsed.records
records.each { record ->
record.roles.each { role ->
role.id = record.id
}
record.remove('id')
}https://stackoverflow.com/questions/43836757
复制相似问题