2014-09-22 88 views
2

我有一个Java Object,它包含许多类型的变量,包括JSONObject。 焕调试我的目标我得到了以下字符串的JSONObject: -使用GSON将JSONObject转换为JSON

{"INCLUSIONS":{"OPTIONS":[{"display":"Complimentary stay for children under 5 without extra bed"}]}} 

但是当我用:-gson.toJson(JSONObj),我得到了以下

{"myHashMap":{"INCLUSIONS":{"myHashMap":{"OPTIONS":{"myArrayList":[{"myHashMap":{"display":"Complimentary stay for children under 5 without extra bed"}}]}}}}} 

有人请能不能详细原因它正在将JSONObject转换为Map &列表? 或任何工作?

谢谢。

+1

,你似乎是使用myHashMap为公司在被使用的变量,请提供您为此编写Java代码JSON。 – david99world 2014-09-22 09:29:22

回答

0

只需使用myJsonObj.toString()代替myJsonObj.toJSON()

你的问题,是因为一个JSONObject存储为一个HashMap允许程序员基于密钥的方法达到的值。作为例子,

String jsonStr = "{'key': 'value'}"; 
JsonObject json = gson.fromJson(jsonStr, JsonObject.class); 
String value = json.get("key").getAsString(); 

你自己看着办是JSON属性被存储为HashMap<JsonElement>