在java中重新格式化JSON数组/对象
我正在尝试将这个json文件重新格式化为不同的格式。我以前从未用过杰克逊或格森。我有这个想法,但我不知道如何实施
所以我有一个json文件:file。包含以下内容的json:
{
"Fruits": [
{
"name": "avocado",
"organic": true
},
{
"name": "mango",
"organic": true
}
]
}
我想要的是这种格式:
{
"List Fruits":{
"Fruits": [
{
"name": "avocado",
"organic": true
},
{
"name": "mango",
"organic": true
}
]
}
}
以某种方式在json文件中添加“列表水果”
我正在尝试使用jackson api,但我不知道如何使用
# 1 楼答案
我强烈建议你浏览一下杰克逊或格森图书馆的文档,因为你提到你是新来的。 我已经为这个项目创建了一个git回购示例。此示例使用Jackson API
访问https://github.com/rajramo61/jsonwrapper
这是水果课
}
下面是最后一个JSON类的详细信息。这个类将包装从jsn文件加载的初始json
}
下面是InitialJson类的详细信息。这是一个从json文件中提取数据的类
}
你可以进行回购并在本地完成,它应该可以正常工作
# 2 楼答案
将JSON分配给字符串变量,例如,将上述JSON分配给名为
json
的变量:为对象准备类:
然后使用Gson将JSON转换为您的对象:
接下来为
fruits
对象准备包装类ListOfFruits
:下一步将
fruits
对象打包到另一个对象中:最后生成输出JSON:
# 3 楼答案
您不需要创建
POJO
模型来读取和更新JSON
。使用Jackson
,您可以将整个JSON
有效负载读取到JsonNode
,使用所需的键创建一个Map
,并序列化回JSON
。请参见以下示例:以上代码打印: