java – 在写入File之前格式化JSON

前端之家收集整理的这篇文章主要介绍了java – 在写入File之前格式化JSON前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
目前我正在使用 Jackson JSON Processor来编写首选项数据和文件,主要是因为我希望高级用户能够修改/备份这些数据. Jackson非常棒,因为它非常容易使用,并且显然表现得很好(参见 here),但是我似乎唯一遇到的问题是当我运行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}

我希望它在文件显示为:

{
    "testArray": [
        1,{
            "testObject": true
        }
    ],"anotherObject": {
        "A": "b","C": "d"
    },"string1": "i'm a string","int1": 5092348315
}

是否有人知道我可以用杰克逊这样做的方式,或者我是否必须从杰克逊获取JSON字符串并使用另一个第三方lib来格式化它?

提前致谢!

解决方法

尝试像这样创建Object Writer
ObjectWriter writer = mapper.defaultPrettyPrintingWriter();

猜你在找的Java相关文章