淘先锋技术网

首页 1 2 3 4 5 6 7

JSON字符串格式化是将一个没有格式的 JSON 字符串转换成具有良好可读性的格式的过程,而在 Java 中,可以通过使用第三方库来对 JSON 字符串进行格式化操作,比如:

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public static String formatJson(String json) {
String result = "";
try {
ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationFeature.INDENT_OUTPUT, true);
Object jsonObj = mapper.readValue(json, Object.class);
result = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonObj);
} catch (Exception e) {
result = json;
}
return result;
}

上述代码中,我们使用了com.fasterxml.jackson.core包下的ObjectMapper类和SerializationFeature类来进行 JSON 格式化。在使用 ObjectMapper 时,我们需要将 JSON 字符串解析成一个 Object 类型的对象,这个解析的过程中,ObjectMapper 会自动将 JSON 字符串中的键值对转换成 Key-Value 形式,然后再使用writeValueAsString方法将 Object 对象转换成具有良好可读性的 JSON 字符串。

需要注意的是,如果 JSON 字符串无法解析成 Object 类型时,我们要将原来的 JSON 字符串返回。