我有以下JSON:
{
"custom": {
"1": {
"v": "3.0"
},
"2": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"3": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"4": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"7": {
"NAME": "XXXXXX",
"VALUE": "100"
},
"26": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"27": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"28": {
"NAME": "YYYYYYY",
"VALUE": "200"
},
"29": {
"NAME": "YYYYYYY",
"VALUE": "200"
}
}
}我需要解析上面的JSON并将数据存储到HashMap<Integer,Object>中。例如:
map.put(1,"3.0");
map.put(2, "abc");当我尝试在线创建POJO时,工具会生成50个对应于整数值计数的类,我不想创建50个POJO类。
请帮帮忙。
发布于 2017-05-08 19:49:25
尝尝这个
JSONObject jsonObject = null;
try {
jsonObject = new JSONObject(jsonString);
jsonObject = jsonObject.getJSONObject("custom");
Iterator<String> iter = jsonObject.keys();
while (iter.hasNext()){
String key = iter.next();
JSONObject jsonObject1 = jsonObject.getJSONObject(key);
ModelClass model = new ModelClass();
if(jsonObject1.has("name"))
model.setName(jsonObject1.getString("name"));
if(jsonObject1.has("value"))
model.setValue(jsonObject1.getString("value"));
map.put(Integer.parseInt(key),model);
}
} catch (JSONException e) {
e.printStackTrace();
}https://stackoverflow.com/questions/43846710
复制相似问题