【问题标题】:Gson JsonArray pretty printingGson JsonArray 漂亮的打印
【发布时间】:2015-03-22 06:59:54
【问题描述】:

这是我的例子:

public class Obj {
    String field1;
    int field2;
    public Obj(String field1, int field2) {
        this.field1 = field1;
        this.field2 = field2;
    }   
    public static void main(String[] args) 
    {       
        final Obj o1 = new Obj("string1",1);
        final Obj o2 = new Obj("string2",2);

        List<Obj> list = new ArrayList<Obj>(){{
            add(o1);
            add(o2);
        }};

        Gson gson = new GsonBuilder().setPrettyPrinting().create();
        JsonElement element = gson.toJsonTree(list, new TypeToken<List<Obj>>(){}.getType());
        JsonArray jsonArray = element.getAsJsonArray();
        System.out.println("1-");
        System.out.println(jsonArray.toString());        

        String json = gson.toJson(o1);
        System.out.println("2-");
        System.out.println(json);
    }
}

输出:

1-
[{"field1":"string1","field2":1},{"field1":"string2","field2":2}]

2-
{
  "field1": "string1",
  "field2": 1
}

如何为 jsonArray 启用漂亮打印?

我认为这足以解释我的问题,但是这里有一些 bla bla bla bla 因为 stackoverflow 会询问我更多细节让我发布问题。

【问题讨论】:

  • 我没有得到你想要什么?想在console上写json好看吗?
  • 使用JsonWriterjsonWriter.setIndent(" ")

标签: java json gson


【解决方案1】:

JsonArray::toString 似乎没有提供配置漂亮打印的方法。

您可能只需要使用您的 Gson 实例对其进行反序列化:

System.out.println("3-");
System.out.println(gson.toJson(jsonArray));

【讨论】:

    【解决方案2】:

    如果您的项目中有服务器,我建议您制作简单的 index.jsp 和 out.println 这个 JSON。并将这个插件添加到你的谷歌浏览器JSON Viewer

    你会得到漂亮的 Print Json。

    【讨论】:

      【解决方案3】:

      toString(2) 尊重标识空间

      System.out.println(json.toString(2));
      

      【讨论】:

        【解决方案4】:

        您可以使用 Jackson 库。

        查看这篇文章: Convert JSON String to Pretty Print JSON output using Jackson

        问题真的很相似。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-11-26
          • 1970-01-01
          • 2021-06-22
          • 1970-01-01
          • 2016-07-07
          • 2014-05-19
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多