gpt4 book ai didi

java - 在groovy中解析JSON时如何保持键的顺序

转载 作者:太空宇宙 更新时间:2023-11-04 13:36:41 27 4
gpt4 key购买 nike

我正在尝试解析一个包含很多键的大 JSON 文件,然后在更改 10-12 个键后,我将修改后的内容写回到新的文本文件中。

我面临的问题是按键顺序发生变化,我有必要保持按键顺序。

我使用下面的代码来执行此操作

import groovy.json.JsonSlurper
import groovy.json.JsonBuilder

def inputFile = new File("C:\\input\\input.json")

def InputJSON = new JsonSlurper().parseText(inputFile.text)
...
InputJSON.key1 = 'a'
InputJSON.key2 = 'b'
...
new File("C:\\output\\output.txt").write(new JsonBuilder(InputJSON).toPrettyString())

请帮我将解析后修改的内容写回新的文本文件中。

最佳答案

假设您有一个对象字段,您正在使用 groovy 将其转换为 json

你通常会这样做

new JsonBuilder(obj).toString()

现在如果你想确保json中键的顺序是field2,field3,field4,field1那么你可以这样做

def listOfFields = [
"field2",
"field3",
"field4",
"field1"
]

Map map = new LinkedHashMap();

listOfFields.each{
map[it] = obj."${it}"
}

new JsonBuilder(obj).toString()

这将确保您的 json 具有

{   
"field2": "val2",
"field3": "val3",
"field4": "val4",
"field1": "val1"

}

关于java - 在groovy中解析JSON时如何保持键的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31628011/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com