如何使用
JSON-lib(http://json-lib.sourceforge.net/)将json字符串转换为Java Map?
我可以转换为DynaBean:
我可以转换为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的优点.所以,这是一张地图.
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); } }