0

重複の可能性:
Android での JSON の送信と解析

{
    "title": " '''Sachin Ramesh Tendulkar''' (born 24 April 1973) is an Indian cricketer widely regarded as one of the greatest batsmen in the history of cricket. ",
    "sub": {
        "sub0": {
            "name": "Cricket",
            "importance": "1"
        },
        "sub1": {
            "name": "Wisden Cricketers of the Year",
            "importance": "1"
        },
        "sub2": {
            "name": "Marathi people",
            "importance": "1"
        },

    },
    "heading": {
        "p1": {
            "point": " Tendulkar . "
        },
        "p2": {
            "point": " He."
        },
        "p3": {
            "point": " 2009. "
        },
    }
}
4

2 に答える 2

2

Web から結果を取得するたびに文字列が返され、このように JsonObject に変換する必要があります

JSONObject json = new JSONObject (response);

これにより、文字列全体がjsonに変換され、JsonObjectクラスのメソッドを次のように使用してjsonからすべての値を取得できます

String player name = json.getString("title");

この結果が得られます

Sachin Ramesh Tendulkar''' (1973 年 4 月 24 日生まれ) は、クリケットの歴史の中で最も偉大な打者の 1 人として広く認められているインドのクリケット選手です。

于 2012-05-17T06:57:48.193 に答える
1

この場合、JSONObject クラスの keys メソッドを使用できます。基本的に、キーの反復子を返します。これを繰り返して、値を取得してマップに配置できます。

try {
        JSONObject jsonObject = new JSONObject(theJsonString);
        Iterator keys = jsonObject.keys();
        Map<String, String> map = new HashMap<String, String>();
        while (keys.hasNext()) {
            String key = (String) keys.next();
            map.put(key, jsonObject.getString(key));
        }
        System.out.println(map);// this map will contain your json stuff
    } catch (JSONException e) {
        e.printStackTrace();
    }

参照: Json 文字列解析、Android での Json 文字列の解析

于 2012-05-17T06:57:58.553 に答える