Android studio logcat json漂亮打印修剪空白

Android studio logcat json漂亮打印修剪空白,android,json,android-studio,logcat,pretty-print,Android,Json,Android Studio,Logcat,Pretty Print,Android Studio中有一个关于在LogCat中修剪空白的错误记录。这意味着,如果您想要漂亮地打印JSON,您无法。 代码 这根本行不通 请检查我的答案,如果你需要这个工作。我用GSON和无中断空格字符提出了一个超级简单的解决方案 谢谢在修复错误之前,您可以使用此代码在logcat中进行漂亮的打印: public static String prettyJson(String body) { if (TextUtils.isEmpty(body)) { return b

Android Studio中有一个关于在LogCat中修剪空白的错误记录。这意味着,如果您想要漂亮地打印JSON,您无法。 代码

这根本行不通

请检查我的答案,如果你需要这个工作。我用GSON和无中断空格字符提出了一个超级简单的解决方案


谢谢

在修复错误之前,您可以使用此代码在logcat中进行漂亮的打印:

public static String prettyJson(String body) {
   if (TextUtils.isEmpty(body)) {
      return body;
   }
   try {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      StringWriter stringWriter = new StringWriter();
      JsonWriter jsonWriter = new JsonWriter(stringWriter);
      jsonWriter.setIndent("\u00A0\u00A0");
      JsonElement jsonElement = new JsonParser().parse(body);
      gson.toJson(jsonElement, jsonWriter);
      return stringWriter.toString();
   } catch (JsonParseException e) {
      return body;
   }
}
is所做的是,它只是在缩进时不使用中断空间,而这并不被视为空白

public static String prettyJson(String body) {
   if (TextUtils.isEmpty(body)) {
      return body;
   }
   try {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      StringWriter stringWriter = new StringWriter();
      JsonWriter jsonWriter = new JsonWriter(stringWriter);
      jsonWriter.setIndent("\u00A0\u00A0");
      JsonElement jsonElement = new JsonParser().parse(body);
      gson.toJson(jsonElement, jsonWriter);
      return stringWriter.toString();
   } catch (JsonParseException e) {
      return body;
   }
}