GSON漂亮的打印问题寻找解决方案



嗨,伙计们,我需要一些帮助!

我当前漂亮的打印gson对象:

Gson gson = new GsonBuilder().setPrettyPrinting().create();

我目前的输出是:

{
  "YYYY": "ZZZZ",
  "FFFFFFFFF": [
    {
      "AAAAAA": 1
    },
    {
      "BBBBB": 1
    },
    {
      "CCCCCCC": 2
    },
    {
      "TTTTTT": 10
    },
    {
      "PPPPPPPP": 66
    },
    {
      "SSSSSSS": 99
    }
  ]
}

我想要的输出是:

{
  "YYYY": "ZZZZ",
  "FFFFFFFFFFFF":
     [
        { "AAAAAA": 1},
        { "BBBBBB": 1},
        { "CCCCCC": 2},
        { "TTTTTT": 10},
        { "PPPPPP": 66},
        { "SSSSSS": 99 }
     ]
}

提前非常感谢! 尝试这个以获得一些好的 JSON 应用程序,让我发疯!!如果有人提供帮助,将不胜感激!

来自 Gson 指南

如果您想使用"漂亮打印"功能,则必须配置您的 使用 GsonBuilder 的 Gson 实例。 Json格式化程序不是 通过我们的公共 API 公开,因此客户端无法配置 JSON 输出的默认打印设置/边距。 目前,我们 仅提供具有默认行长度的默认 JsonPrintFormatter 80 个字符、2 个字符缩进和 4 个字符右侧 边缘。

这意味着使用Gson,无法以这种方式达到您的目标。

您唯一能做的就是扩展JsonWriter类并进行适当的自定义(假设您有原始对象来生成对象(。但是,如果您只需要格式化一次,则网络上有很多在线格式化程序。

相关内容

最新更新