Удалить пустой объект из массива json с помощью GSON - PullRequest
0 голосов
/ 25 июня 2019
{
  "ChangeRequests": [
    {}
  ]
}

Удалите пустую модель из массива JSON с помощью Gson. Из-за этого создайте одну модель внутри списка в модели, все значения равны нулю, используя Gson

data class TestRequest(
@SerializedName("ChangeRequests")
val changeRequests: List<ChangeRequest>

)

val result = Gson().fromJson(jsonString,TestRequest::class.java)

1 Ответ

0 голосов
/ 25 июня 2019

простой код: у меня это сработало!

Type type = new TypeToken<Map<String, Object>>() {}.getType();
Map<String, Object> data = new Gson().fromJson(jsonString, type);

for (Iterator<Map.Entry<String, Object>> it = data.entrySet().iterator(); 
it.hasNext();) {
Map.Entry<String, Object> entry = it.next();
if (entry.getValue() == null) {
    it.remove();
} else if (entry.getValue().getClass().equals(ArrayList.class)) {
    if (((ArrayList<?>) entry.getValue()).size() == 0) {
        it.remove();
    }
 }
}

String json = new GsonBuilder().setPrettyPrinting().create().toJson(data);
System.out.println(json);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...