J'ai du mal à trouver un moyen d'analyser JSONArray. Cela ressemble à ceci:
[{"name":"name1","url":"url1"},{"name":"name2","url":"url2"},...]
Je sais comment l'analyser si le JSON a été écrit différemment (en d'autres termes, si j'ai renvoyé un objet json au lieu d'un tableau d'objets). Mais c'est tout ce que j'ai et je dois l'accompagner.
* EDIT: C'est un json valide. J'ai créé une application iPhone en utilisant ce json, maintenant je dois le faire pour Android et je ne peux pas le comprendre. Il existe de nombreux exemples, mais ils sont tous liés à JSONObject. J'ai besoin de quelque chose pour JSONArray.
Quelqu'un peut-il me donner un indice, un tutoriel ou un exemple?
Très appréciée !
Réponses:
utilisez l'extrait de code suivant pour analyser le JsonArray.
J'espère que ça aide.
la source
Je vais juste donner un petit exemple de Jackson :
Créez d'abord une zone de stockage de données contenant les champs de la chaîne JSON
Et analyser la liste de MyDataHolders
Utilisation des éléments de liste
la source
DefaultHttpClient
méthode d'exécution s est un appel bloquant, elle doit donc être effectuée dans une tâche d'arrière-plan, juste pour expliquer pourquoi elle est dans une classe séparée.import your_package_name_here.HttpGetTask.OnHttpGetCompletedListener;
Production:
la source
Créez une classe pour contenir les objets.
Désérialisez ensuite comme suit:
Article de référence: http://blog.patrickbaumann.com/2011/11/gson-array-deserialization/
la source
@Stebra Voir cet exemple. Cela peut vous aider.
Et quand vous obtenez le résultat; analyser comme ça
la source
Dans cet exemple, il y a plusieurs objets dans un même tableau json. C'est,
Voici le tableau json: [{"name": "name1", "url": "url1"}, {"name": "name2", "url": "url2"}, ...]
Ceci est un objet: {"name": "name1", "url": "url1"}
En supposant que vous avez obtenu le résultat dans une variable String appelée jSonResultString:
la source
Quelques bonnes suggestions sont déjà mentionnées. Utiliser GSON est vraiment très pratique, et pour rendre la vie encore plus facile, vous pouvez essayer ce site Web qui s'appelle jsonschema2pojo et fait exactement cela:
Vous lui donnez votre json et il génère un objet java qui peut coller dans votre projet. Vous pouvez sélectionner GSON pour annoter vos variables, donc extraire l'objet de votre json devient encore plus facile!
la source
Mon cas Exemple de chargement depuis le serveur.
J'espère que ça aide
la source
Créez une classe Java POJO pour les objets de la liste comme ceci:
Maintenant, créez simplement une liste de NameUrlClass et initialisez-la à une ArrayList comme ceci:
Vous pouvez utiliser stocker le tableau JSON dans cet objet
la source
obj = JSONArray;
est censé faire n'est pas clair . Qu'est-JSONArray
ce que dans ce contexte? D'où est ce que ça vient? Quel est le but de l'initialisationobj
avec anew ArrayList<NameUrlClass>
, quand vous le remplacez directement après de toute façon?Ancien message que je connais, mais à moins d'avoir mal compris la question, cela devrait faire l'affaire:
}
la source
la source