Lire un fichier json avec gson bibliothèque
J'ai un fichier json formaté comme suit:
[{
'title': 'Java',
'authors': ['Auth', 'Name']
},
{
'title': 'Java2',
'authors': ['Auth2', 'Name2']
},
{
'title': 'Java3',
'authors': ['Auth3', 'Name3']
}]
J'ai donc essayé d'utiliser gson bibliothèque pour analyser le fichier avec le code suivant:
JsonElement jelement = new JsonParser().parse(pathFile);
JsonObject jObject = jelement.getAsJsonObject();
JsonArray jOb = jObject.getAsJsonArray("");
final String[] jObTE = new String[jOb.size()];
for (int k=0; k<jObTE.length; k++) {
final JsonElement jCT = jOb.get(k);
JsonObject jOTE = jCT.getAsJsonObject();
JsonArray jContentTime = jOTE.getAsJsonArray("content_time");
final String[] contentTime = new String[jContentTime.size()];
for (int i=0; i<contentTime.length; i++) {
final JsonElement jsonCT = jContentTime.get(i);
JsonObject jObjectTE = jsonCT.getAsJsonObject();
JsonArray jTE = jObjectTE.getAsJsonArray("");
final String[] contentTimeTE = new String[jTE.size()];
for (int j=0; j<contentTimeTE.length; j++) {
final JsonElement jsonCTTE = jTE.get(j);
contentTime[j] = jsonCTTE.getAsString();
}
}
}
Mais, ce faisant, j'ai trouvé cette erreur: java.lang.IllegalStateException: Not a JSON Object
à la deuxième ligne.
Boy, il vous serait utile de savoir ligne a jeté cette exception...
J'ai édité la question. L'erreur est dans la deuxième ligne du code.
résolu ci-dessous, d'ailleurs, avez-vous vu cela? stackoverflow.com/questions/17650419/...
J'ai édité la question. L'erreur est dans la deuxième ligne du code.
résolu ci-dessous, d'ailleurs, avez-vous vu cela? stackoverflow.com/questions/17650419/...
OriginalL'auteur user2520969 | 2015-12-28
Vous devez vous connecter pour publier un commentaire.
Vous essayez d'analyser tableau d'objet, auquel cas, vous allez échouer, parce que le haut niveau de la structure de votre tableau json est.
Je voudrais parser JSON dans la manière légèrement différente
1) Créer des
Model
classe2) Analyser votre JSON (
Votre code est à peine lisible, donc je suppose que c'résolu votre problème
Deuxième façon:
OriginalL'auteur dawidklos