0
{"Result": {
    "version": [
      "001","002","003","004","005"
    ],
 "Names": {
      "001": "NoName","002": "NoName","003": "Cupcake","004": "Donut","005": "Eclair"
    }
}}

上記の結果は、応答として取得している結果です。上記から対応する名前を取得するにはどうすればよいですか。誰かがこれを解決するのを手伝ってくれます。ありがとう

4

2 に答える 2

2

このAndroidJson解析の例を参照してください

あなたは以下のようにあなたを助けるかもしれません。

JSONObject mjsonObject = null;
        try {
            mjsonObject=new JSONObject(jsonString);
        } catch (JSONException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        JSONArray mjsonArray;

        JSONObject mJsonObject2,jsonObjectNames;
        try{
            mJsonObject2= mjsonObject.getJSONObject("Result");
            mjsonArray=mJsonObject2.getJSONArray("version");
            jsonObjectNames=mJsonObject2.getJSONObject("Names");

            String[] versionName=new String[mjsonArray.length()];
            for(int i=0;i<mjsonArray.length();i++){
                if(!mjsonArray.isNull(i)){
                    versionName[i]=mjsonArray.getString(i);
                }
            }
            String [] versionString=new String[mjsonArray.length()];



        }catch(JSONException json){
            json.printStackTrace();
        }catch(NullPointerException excep){

        }
于 2012-05-16T09:08:10.020 に答える
0

haiはこれを参照してくださいあなたはアイデアを得るでしょう

    try {
        resp = new JSONObject(shared);
        cities = new JSONArray(resp.getString("cities"));

        for (int i = 0; i < cities.length(); i++) {

            JSONObject jsonObject = cities.getJSONObject(i);
            id = jsonObject.getString("id");

            operators = jsonObject.getJSONArray("operators");

            if (id.equalsIgnoreCase(String.valueOf(srcid1))) {

                for (int j = 0; j < operators.length(); j++) {
                    JSONObject jsonObject1 = operators.getJSONObject(j);
                    oid = jsonObject1.getString("id");

                    vehicle = jsonObject1.getJSONArray("vehicles");

                    if (oid.equalsIgnoreCase(value)) {
                        Log.v("json", "msg");
                        for (int k = 0; k < vehicle.length(); k++) {

                            jsonObject2 = vehicle.getJSONObject(k);
                            vehiclename = jsonObject2.getString("name");
                            id = jsonObject2.getString("id");
                            int vehicleid = Integer.parseInt(id);
                            map = new HashMap<String, String>();
                            Log.v("vehi", "" + vehiclename);
                            Log.v("vehi", "" + vehicleid);
                            map.put("id", "" + id);
                            map.put("vehiclename", "" + vehiclename);
                            mylist.add(map);
                            Log.v("count", "" + mylist.toString());

                        }

                    }

                }

            }

        }
于 2012-05-16T09:32:35.877 に答える