首页 > 解决方案 > 使用java美化一个json文件

问题描述

我有一个我下载的 JSON 文件,但我不知道它的节点,但我想使用 java 美化它。

我找到了很多解决方案,但就我而言,我不知道我的 JSON 文件的节点。所以请提供任何帮助

我希望它如何

怎么样

标签: javajson

解决方案


我发誓我尝试了上面提到的所有解决方案,但问题是为了使用 java (Jackson, Gson, json ...) 构建 JSON 格式良好的文件,您需要知道文件的节点,但我不知道 [ ...]

如果您愿意使用 Jackson,这里有一个可行的解决方案:

ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationConfig.Feature.INDENT_OUTPUT);

JsonNode jsonNode = mapper.readTree(new URL("https://petstore.swagger.io/v2/swagger.json"));
String formattedJson = mapper.writeValueAsString(jsonNode);

上面的示例演示了如何从给定的 URL 读取 JSON 文档,这可能是也可能不是您的情况。如果它不满足您的需求,请检查API,因为您可以从 a 、 a 、 a等ObjectMapper读取 JSON 文档。StringInputStreamFile

这里的主要内容是:此解决方案不需要您了解 JSON 的结构。只要它是一个有效的 JSON,Jackson 就会使用它的树模型来解析它。


或者,当您似乎想要解析 Swagger/OpenAPI 2.0 JSON 文件时,您可以使用以下内容(有关详细信息,请查看文档):

Swagger swagger = new SwaggerParser().read("https://petstore.swagger.io/v2/swagger.json");
String swaggerString = Json.pretty(swagger);

推荐阅读