ウェブサイトからJSON文字列を取得しています。私はこのデータをすることができ、このようになりますデータ(JSON配列)JSON文字列内で指定されたオブジェクトがオブジェクトか配列かをチェックする方法
myconf= {URL:[blah,blah]}
が、いくつかの回(JSONオブジェクト)
myconf= {URL:{try}}
を持っても、それは私が欲しい
myconf= {}
空にすることができますそのオブジェクトが異なるときには異なる操作を行い、配列が異なる場合は異なる。今まで私のコードでは、配列だけを検討しようとしていたので、例外を受けています。しかし、私はオブジェクトや配列をチェックすることができません。
、誰もがそれを固定することができる方法を提案することができます私は、次の例外に
org.json.JSONException: JSONObject["URL"] is not a JSONArray.
を取得しています。ここでは、オブジェクトと配列がJSONオブジェクトのインスタンスであることを知っています。しかし、私は、指定されたインスタンスが配列かオブジェクトかをチェックできる関数を見つけることができませんでした。
私は条件場合はありません成功
if (myconf.length() == 0 ||myconf.has("URL")!=true||myconf.getJSONArray("URL").length()==0)
ありがとうございます。私は私の疑問を編集したことが、私が不思議に思っていることがより理解できるようになるかもしれない。 if(item instanceof JSONArray)の例を挙げることができますか?状態の場合はどうしたらいいですか? – Judy
これは例です。 'instanceof'演算子は' item'が 'JSONArray'かどうかを伝えます。ホールドして、少し肉付けしてください。 – cHao
ありがとうチャオ。それは実際に働いた。しかし、文字列も空にすることができます。だから、私もそれに間違いがあります。 myconf.getJSONArray( "URL")。length()> 0){Object item = myconf.get(myconf.getJSONArray( "URL")!= null) ( "URL"); // other code} JSONObject ["URL"]が見つかりません。 – Judy