在java for android中创建特定格式的json

时间:2015-08-15 13:09:08

标签: java android json

我在java中有一个复杂的代码,当简化时,如下所述:

我从'myclass&#39;创建对象将它添加到List<myclass>对象中。

我转换List<myclass> to List<Map>对象。

现在我创建了一个JSONArray和..

List<Map>中的所有Map对象转换为json对象,然后将它们添加到jsonArray对象。

然后我最后用toString函数将其转换为字符串。

JSONArray arr = new JSONArray();
        for(Map m : map) {
            JSONObject mapjs = new JSONObject(m);
            arr.put(mapjs);
        }
        String mapString=arr.toString();

有了这个,我能够得到如下字符串..

[{"json1":{"id":"jsonid1"}},{"json2":{"id":"jsonid2"}}]

我需要它采用以下格式..

{"json1":{"id":"jsonid1"},"json2":{"id":"jsonid2"}}

真诚地感谢所有人的帮助..

由于

2 个答案:

答案 0 :(得分:0)

要将另一个JSONObject放入JSONObject,您可以尝试如下:

JSONObject jsonObject = new JSONObject().put("json1", new JSONObject.put("id", "jsonid1"));

答案 1 :(得分:0)

更好的方法似乎是以这种格式创建地图,当转换为json时,以必要的格式创建文件

Map mymap = new Hashmap();
    for(Map m : map) {
               mymap.putall(m);
            }
    JSONObject mapjs = new JSONObject(mymap).toString();