13

JSON-lib(http://json-lib.sourceforge.net/)を使用してjson文字列をJavaマップに変換するにはどうすればよいですか?DynaBeanに変換できます:

JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );  
DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject );  

しかし、Javaマップに直接変換する方法が見つかりませんでした

編集:

私は解決策を見つけました:

JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
Map<String, Object> myMap = (Map<String, Object>) JSONObject.toBean(jsonObject, Map.class)
4

1 に答える 1

21

別のアプローチは、JSONObject実装するという事実を利用することjava.util.Mapです。だから、それ地図です。

import java.util.Map;

import net.sf.json.JSONObject;

public class Foo
{
  static String json = "{\"one\":\"won\",\"two\":2,\"three\":false}";

  public static void main(String[] args)
  {
    JSONObject jsonObject = JSONObject.fromObject(json);
    Map map = jsonObject;
    System.out.println(map);
  }
}
于 2011-06-12T20:17:18.500 に答える