Java: JSON довольно печатать объекты в ArrayList в одну строку - PullRequest
0 голосов
/ 16 декабря 2018

Я пытаюсь красиво напечатать Java-объект с ArrayList в нем.Но результат в настоящее время выглядит так:

 {
  "ID": "ID1234",
  "nodeList": [
    {
      "ID": "file123ABC",
      "label": null,
      "type": null,
      "description": null
    },
    {
      "ID": "file456DEF",
      "label": null,
      "type": null,
      "description": null
    },

Есть ли возможность напечатать JSON следующим образом:

{
  "ID": "ID1234",
  "nodeList": [
    {
      "ID": "file123ABC","label": null,"type": null,"description": null
    },
    {
      "ID": "file456DEF","label": null,"type": null,"description": null
    },

В настоящее время я использую GSON для PrettyPrinting.

Gson gson = new GsonBuilder().setPrettyPrinting().serializeNulls().create();
String json = gson.toJson(pgm);

1 Ответ

0 голосов
/ 16 декабря 2018

Кажется, нет никакого способа заставить Gson.toJson сделать это.Действительно, даже базовый JsonWriter не может этого сделать.

Если вам это действительно нужно, то вам, скорее всего, придется реализовать свой собственный класс сериализатора JSON, который будет обрабатывать объекты в массивах по-разному.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...