Json文字列をJava JSON-lib(http://json-lib.sourceforge.net/)を使用してマップに変換するにはどうすればよいですか?DynaBeanに変換できます:
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject );
しかし、Java Mapに直接変換する方法が見つかりませんでした
編集:
私は解決策を見つけました:
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
Map<String, Object> myMap = (Map<String, Object>) JSONObject.toBean(jsonObject, Map.class)
別のアプローチは、JSONObject
がJava.util.Map
を実装するという事実を利用することです。だから、それはisマップです。
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);
}
}