2017-03-04 8 views
0

私はオブジェクトを配列にすることができるAPIを使って作業しています。また、どのオブジェクトでも構いません。どのシナリオでオブジェクトか配列なのか分かりません私はいくつかの条件で異なるオブジェクトベースを使用することはできません。時々Jsonオブジェクトとときどきjsonであるオブジェクトを解析する方法

残念ながら私はAPIコードにアクセスできませんでしたので、変更はできません。私がしなければならないどんなトリックもクライアント側にあります。

だから、このシナリオを処理する最良の方法は何ですか。

編集:応答例

. 
. 
    "ecf":"0", 
      "place":{ }, 
      "mn":"1st Test", 
      "teams":[ ], 
      "past_ings":[ 
       { 
        "s":{ }, 
        "d":{ 
        "a":{ 
         "t":{ 
          "i":"5221", 
          "a":"3", 
          "c":"not out", 
          "dt":null, 
          "fd":"0", 
          "bd":"0", 
          "cb":"no", 
          "b":"1", 
          "r":"0", 
          "sr":"0", 
          "four":"0", 
          "six":"0", 
          "name":"Umesh Yadav" 
         } 
        } 
        } 
       } 
. 
. 

オブジェクトTは配列であり得るか、またはそれがオブジェクトであることができます。

注:Gonを解析し、ネットワークレイヤでRetrofitを使用しています。

答えて

1
Object response = json.get("response") 
if (response instanceof JSONArray) { 
    // It's an array, cast it as a JSONArray to use it. 
} else { 
    // It's an object, cast it as a JSONObject to use it. 
} 
+0

私はマニュアルパーシオンを行っていません。私はGsonを使用しており、私のネットワーク層に改造しています – user2934930

+0

その場合、Retrofitにオブジェクトを期待してチェックをしてもらえませんか?私はRetrofitに精通していません、私はそれを読み上げます。 –

関連する問題