Tengo un archivo JSON como este:
[
{
"number": "3",
"title": "hello_world",
}, {
"number": "2",
"title": "hello_world",
}
]
Antes, cuando los archivos tenían un elemento raíz, usaba:
Wrapper w = gson.fromJson(JSONSTRING, Wrapper.class);
código pero no puedo pensar en cómo codificar la Wrapperclase ya que el elemento raíz es una matriz.
He intentado usar:
Wrapper[] wrapper = gson.fromJson(jsonLine, Wrapper[].class);
con:
public class Wrapper{
String number;
String title;
}
Pero no he tenido suerte. ¿De qué otra manera puedo leer esto usando este método?
PD Tengo esto para trabajar usando:
JsonArray entries = (JsonArray) new JsonParser().parse(jsonLine);
String title = ((JsonObject)entries.get(0)).get("title");
Pero preferiría saber cómo hacerlo (si es posible) con ambos métodos.

Wrapper[] data = gson.fromJson(jElement, Wrapper[].class);funciona bien para mí.Respuestas:
El problema es causado por una coma al final de (en su caso cada uno ) objeto JSON colocado en la matriz:
Si los elimina, sus datos se convertirán en
y
debería funcionar bien.
fuente
jacksonbiblioteca y este comentario, crear una matriz y envolverlaArrays.asList(..)es más rápido que crear una lista usando TypeRefence. No lo probé con lagsonbiblioteca, pero puede valer la pena compararlo.Parece funcionar bien. Pero hay una
,coma adicional en su cadena.fuente
llamada de muestra:
fuente
GsonUtilses la clase donde puso su propiotoList()método.fuente