将HashMap <string,object =“”>放在jsonobject </string,>中

时间:2013-07-03 09:29:33

标签: java json hashmap

我构建一个json对象,该对象由在Hashmap

中定义的nameValue对组成

我遇到的问题是我何时调用:

jsonObject.put(hashmap);

它添加了nameValue对,如下所示:

name=value代替name:value

有什么想法吗?

由于

3 个答案:

答案 0 :(得分:5)

使用JSONObject构造函数。不要创建你自己,因为你可能会错过某些情况,比如值是一个数组。

JSONObject jsonObject = new JSONObject(hashMap);

这实际上是一个完整的解决方案,因为它涵盖了角落情况,例如值是数组的位置。因此,它将使它成为JSONArray。

答案 1 :(得分:3)

遍历HashMap并放入jsonObject:

Iterator it = mp.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry pairs = (Map.Entry)it.next();
    jsonObject.put(pairs.getKey(), pairs.getValue() );
}

答案 2 :(得分:0)

使用JSON的putAll。

        Map<String, Object> myMap = new HashMap<String, Object>();
        JSONObject jsonObject = new JSONObject();

        jsonObject.putAll(myMap);