51 votes

Tester s’il s’agit de JSONObject ou JSONArray

J’ai un flux json qui peut être quelque chose comme :

ou quelque chose comme

Dans mon code Java, je fais ce qui suit:

Dans le premier cas, ce qui précède ne fonctionne pas car il n’y a qu’un seul élément dans le flux. Comment puis-je vérifier si le flux est un ou un ?

J’ai essayé avec `` mais ça n’a pas marché..

Merci

120voto

T.J. Crowder Points 285826

Quelque chose comme ça devrait le faire:

Cela a l’avantage d’obtenir la valeur de la propriété du principal `` une seule fois. Étant donné que l’obtention de la valeur de la propriété implique de parcourir un arbre de hachage ou similaire, c’est utile pour les performances (pour ce qu’il vaut).

13voto

Nathan Q Points 1236

Peut-être un chèque comme celui-ci?

Cela renvoie un ou si l’objet d’intervention n’est pas un objet JSON. Ensuite, procédez comme ceci:

Cela vous renverra un tableau s’il est valide ou bien il donnera .

11voto

azwar_akbar Points 464

Pour faire simple, vous pouvez simplement vérifier la première chaîne à partir du résultat du serveur.

Cette astuce est juste basée sur le format String of JSON (objet) ou (tableau)

4voto

Virendra Kachhi Points 74

Vous pouvez obtenir l’objet de la chaîne d’entrée en utilisant le code ci-dessous.

Lien : https://developer.android.com/reference/org/json/JSONTokener#nextValue

2voto

Sagar Jadhav Points 481
<pre><code></code><p>ITERATE JSONARRAY private void parseJSONArray(JSONArray jsonArray) lance JSONException { for (Iterator iterator = jsonArray.iterator(); iterator.hasNext();) { JSONObject object = (JSONObject) iterator.next(); this.parseJSON(objet); } }</p></pre>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X