1

誰かが私にjson配列のjson解析をしてくれませんか

 line = "contexts": [
    {
        "uuid": "6686feaa-a254-42ec-a662-c36f70f7a586",
        "name": "School",
    },
    {
        "uuid": "bd8e6c44-d461-4bbe-8946-a3717dc7fa7f",
        "name": "Teaching",
    }]

文字列配列にuuidとnameを入力する必要があります。私は試した

String[] x = new String[10];
String[] y = new String[10];
JSONArray jArray = new JSONArray(line);
for(int i=0;i<jArray.length();i++){          
    JSONObject json_data = jArray.getJSONObject(i);
    x = json_data.getString("name");
y = json_data.getString("uuid");            
        }

これを実行すると、タイプの不一致エラーが発生します。行の種類は、サーバーから返す文字列です。

4

2 に答える 2

4

i配列に要素を追加するために使用します。

String[] x = new String[10];
String[] y = new String[10];
JSONObject json=new JSONObject(line);
JSONArray jArray =json.getJSONArray("contexts");

for(int i=0;i<jArray.length();i++){          
    JSONObject json_data = jArray.getJSONObject(i);
    x[i] = json_data.getString("name");
    y[i] = json_data.getString("uuid");            
        }

http://jsonviewer.stack.hu/を使用して、jsonが有効かどうかを確認できます。Webサービスから動的にアイテムを取得するArrayList代わりに使用しますArray

于 2012-12-05T04:54:07.407 に答える
3

JSONObject も JSONArray も、以下のようにサーバーから文字列を返します。

line = {"contexts": [
    {
        "uuid": "6686feaa-a254-42ec-a662-c36f70f7a586",
        "name": "School",
    },
    {
        "uuid": "bd8e6c44-d461-4bbe-8946-a3717dc7fa7f",
        "name": "Teaching",
    }]}

そして、以下のコードのように解析します:

JSONObject json=new JSONObject(line);
JSONArray jArray =json.getJSONArray("contexts");
于 2012-12-05T04:53:44.280 に答える