Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Gson JsonArray漂亮印花_Java_Json_Gson - Fatal编程技术网

Java Gson JsonArray漂亮印花

Java Gson JsonArray漂亮印花,java,json,gson,Java,Json,Gson,以下是我的例子: 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

以下是我的例子:

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);
    }
}
如何为jsonArray启用漂亮的打印


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

你可以使用Jackson library

查看此帖子:


这个问题非常相似。

你可以使用杰克逊图书馆

查看此帖子:

这个问题非常相似。

关于字符串(2)尊重识别空间

System.out.println(json.toString(2));
toString(2)关于识别空间

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

如果您的项目中有服务器,我建议在这个JSON中使用simple index.jsp和out.println。并将此插件添加到您的谷歌浏览器


您可以获得非常好的打印Json。

如果您的项目中有服务器,我建议使用simple index.jsp和out.println这个Json。并将此插件添加到您的谷歌浏览器


您得到了漂亮的打印Json。

看来
JsonArray::toString
没有提供配置漂亮打印的方法

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

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

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

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

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

我没拿到你想要什么?你想在控制台上写json看起来不错吗?用
JsonWriter
JsonWriter.setIndent(“”)一起写,我没有得到你想要什么?你想在控制台上写json看起来不错吗?使用
JsonWriter
JsonWriter.setIndent(“”)