0
[{"name":"Mark","Surname":"Gaux"}]
[{"Job":"2","Type":"Office"}]

この JSON は、サーバー上の PHP ファイルによってエコーされ、Android アプリケーションによって受信されます。

2 つを 1 つの配列 [] にマージできなかったため、2 つの配列 [] [] があることがわかります。

1 つの配列があったとき、次のループを使用して Android アプリケーションで解析しました。

try{

    JSONArray jArray = new JSONArray(response);

            for(int i=0;i<jArray.length();i++){
                JSONObject json_data = jArray.getJSONObject(i);
                jname = json_data.getString("name");
                jsurname = json_data.getString("Surname");
...
}

簡単な例です。

JSONArray と JSONObject について少し混乱しています。JSONArray は [] の間にあり、JSONObject は {} の間にありますか?

2 つの配列があるので、一方から他方へループするにはどうすればよいでしょうか。

それとも、PHP からそれらを 1 つの配列にマージして、今まで使用していた手法を使用したほうがよいでしょうか?

4

1 に答える 1

1

両方の配列を 1 つの応答で送信しようとしている場合は、次のようにすることができます。

[                                         
    [{"name":"Mark","Surname":"Gaux"}],
    [{"Job":"2","Type":"Office"}]
]

JSON文字列全体は次のJSONArrayとおりです。
getJSONArray(0)JSONObjectnameSurname
getJSONArray(1)JSONObjectJobType

于 2012-05-13T19:53:23.510 に答える