我正在使用json-simple,并且我需要漂亮地打印JSON数据(使其更具人类可读性)。
我还没能在那个库中找到这个功能。这通常是如何实现的?
发布于 2011-09-06 00:06:27
谷歌的GSON可以用一种很好的方式做到这一点:
Gson gson = new GsonBuilder().setPrettyPrinting().create();
JsonParser jp = new JsonParser();
JsonElement je = jp.parse(uglyJsonString);
String prettyJsonString = gson.toJson(je);
或者,由于现在建议使用JsonParser中的静态解析方法,您也可以使用下面的方法:
Gson gson = new GsonBuilder().setPrettyPrinting().create();
JsonElement je = JsonParser.parseString(uglyJsonString);
String prettyJsonString = gson.toJson(je);
下面是import语句:
import com.google.gson.*;
下面是Gradle依赖项:
implementation 'com.google.code.gson:gson:2.8.7'
发布于 2012-03-06 20:35:41
我使用了org.json内置方法来漂亮地打印数据。
JSONObject json = new JSONObject(jsonString); // Convert text to object
System.out.println(json.toString(4)); // Print it with specified indentation
JSON中字段的顺序根据定义是随机的。特定的顺序取决于解析器的实现。
发布于 2017-05-22 04:18:30
与杰克逊(com.fasterxml.jackson.databind
):
ObjectMapper mapper = new ObjectMapper();
System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonObject))
来自:How to enable pretty print JSON output (Jackson)
我知道这已经在答案中了,但我想在这里单独编写它,因为很有可能,您已经将Jackson作为依赖项,所以您需要的只是额外的一行代码
https://stackoverflow.com/questions/4105795
复制相似问题