目前我正在使用Jackson JSON处理器将偏好数据和文件等写入文件主要是因为我希望高级用户能够修改/备份这些数据.杰克逊非常棒,因为它非常容易使用,并且显然表现得很好(参见这里),但是我似乎唯一遇到的问题是当我运行myObjectMapper.writeValue(myFile, myJsonObjectNode)时将所有数据写入ObjectNode一行.我想要做的是将JSON格式化为更加用户友好的格式.
例如,如果我将一个简单的json树传递给它,它将编写以下内容:
{"testArray":[1,2,3,{"testObject":true}], "anotherObject":{"A":"b","C":"d"}, "string1":"i'm a string", "int1": 5092348315}
Run Code Online (Sandbox Code Playgroud)
我希望它在文件中显示为:
{
"testArray": [
1,
2,
3,
{
"testObject": true
}
],
"anotherObject": {
"A": "b",
"C": "d"
},
"string1": "i'm a string",
"int1": 5092348315
}
Run Code Online (Sandbox Code Playgroud)
是否有人知道我可以用杰克逊这样做的方式,或者我是否必须从杰克逊获取JSON字符串并使用另一个第三方lib来格式化它?
提前致谢!
尝试像这样创建Object Writer
ObjectWriter writer = mapper.defaultPrettyPrintingWriter();
Run Code Online (Sandbox Code Playgroud)