Gson - возможно ли использовать int поля в кавычках (") при создании json из объекта? - PullRequest
0 голосов
/ 29 августа 2018

Я использую gson lib для создания json из объектов. Бэкэнд-разработчики просят создать все значения, которые должны быть в "" полях quotes event int / long / boolean. Например, мой JSON выглядит так:

{
  "age": 26,
  "email": "norman@futurestud.io",
  "isDeveloper": true,
  "name": "Norman"
}

-> мне нужен следующий формат:

{
  "age": "26",
  "email": "norman@futurestud.io",
  "isDeveloper": "true",
  "name": "Norman"
}

Должен ли я изменить все свои поля с int на String или есть ли способ сделать это? Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Ваш код является литералом объекта JavaScript, а не JSON. Ну попробуйте это!


var obj = {"age": 26, "email": "norman@futurestud.io", "isDeveloper": правда, "имя": "Norman"};

для (var k in obj) {

if (obj.hasOwnProperty(k))
{
    obj[k] = String(obj[k]);
} 

}

0 голосов
/ 29 августа 2018

Чтобы достичь этого единственного способа, нужно сохранить Int как String, а затем преобразовать класс Data в json String. Поскольку Gson использует автоматическую типизацию, вы не можете сказать Gson преобразовать int в String и дать вам json.

Создайте POJO в соответствии с выходным JSON, который является единственным вариантом.

...