【发布时间】: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好看吗?
-
使用
JsonWriter和jsonWriter.setIndent(" ")