2011-07-18 24 views
13

と私は次のようになりますJSON文字列を持っています。解析JSON文字列はGson

Key: altruism Value: 1 
Key: amazon Value:6 

私は本当にこれを行う方法を理解できません。通常、JSON文字列から解析されるオブジェクトがありますが、ここではそうではありません。

+1

JSONはGsonではないことを明確にしてください。 JSONはデータ形式です。 GsonはJSONを読み書きするためのJavaライブラリです。 –

答えて

18

Gsonあなたは比較的簡単にしようとしていることを行います。以下は実際の例です。

// input: {"altruism":1,"amazon":6} 
String jsonInput = "{\"altruism\":1,\"amazon\":6}"; 

Map<String, Integer> map = new Gson().fromJson(jsonInput, new TypeToken<HashMap<String, Integer>>() {}.getType()); 
System.out.println(map); // {altruism=1, amazon=6} 
System.out.println(map.getClass()); // class java.util.HashMap 
System.out.println(map.keySet().iterator().next().getClass()); // class java.lang.String 
System.out.println(map.get("altruism").getClass()); // class java.lang.Integer