0

非常に単純な質問で、多くの例がありますが、どれもうまくいきませんでした。

json 文字列の最も単純な形式を解析する必要があります。

{"id" : "5" , "name" : "John"}

これを配列、リスト、マップに変換して、このようなものを取得するにはどうすればよいですか?

myArray["id"] = 5
4

4 に答える 4

2

jsonを解析するには

JSONObject jsonobject = new JSONObject("mystring");
String id = jsonobject.getString("id");
String anem = jsonobject.getString("name");

パーサーを実行してデータを取得したら、それを配列またはリストに追加するか、Blackbelt が提案するような DataHolder を使用します

于 2013-11-05T11:12:31.307 に答える
1

これを試して

JSONObject rawData = new JSONObject("{\"id\" : \"5\" , \"name\" : \"John\"}");
        Iterator<String> keys = rawData.keys();
        HashMap<String, String> mappedData = new HashMap<String, String>();
        while (keys.hasNext())
        {
            String key = (String) keys.next();

            if(rawData.getString(key) != null && rawData.getString(key)!= null)
            {
                mappedData.put(key, rawData.getString(key));
            }
        }

これで、次のようにデータを取得できます

mappedData.get("id"); // 5
mappedData.get("name") // John
于 2013-11-05T10:42:50.417 に答える
1
//URL to get JSON Array
    private static String url = "http://x.x.x.x/JSON/";


//JSON Node Names
private static final String TAG_USER = "user";
private static final String TAG_ID = "id";
 private static final String TAG_NAME = "name";

JSONArray user = null;

 // Creating new JSON Parser
        JSONParser jParser = new JSONParser();

        // Getting JSON from URL
        JSONObject json = jParser.getJSONFromUrl(url);

        try {
            // Getting JSON Array
            user = json.getJSONArray(TAG_USER);
            JSONObject c = user.getJSONObject(0);

            // Storing  JSON item in a Variable
            String id = c.getString(TAG_ID);
            String name = c.getString(TAG_NAME);

           }
        catch(Exception e)
          { System.out.println(e.getMessage()); }
于 2013-11-05T10:59:39.537 に答える