如何处理JsonObject到自己的Object



现在我像这样从API中获取JsonObject:
它的XML对象转换为JsonObject。

"Details": {
"row": [
{
"item": [
{
"name": "Account",
"value": 12521512
},
{
"name": "ACCNO",
"value": 4214
},
{
"name": "Number",
"value": 5436
}
]
},
"item": [
{
"name": "Account",
"value": 5789678
},
{
"name": "ACCNO",
"value": 6654
},
{
"name": "Number",
"value": 0675
}
]
},

但是我需要转换这个对象并像这样发送:

{
"Details": {
"row": [
{
"Account": 12521512,
"ACCNO": 4214,
"Number": 12412421
},
{
"Account": 5789678,
"ACCNO": 6654,
"Number": "0675"
}
]
}
}

我有超过1000行,我需要更快的方式来处理。如何处理,请帮助我

可以使用JSON-java库解析输入并将其转换为所需的格式。像这样的东西可以工作,但您可能需要根据您的需要进行调整:

JSONObject jsonObject = new JSONObject(json); // Load your json here
JSONObject result = new JSONObject("{"Details": {"row": []}}");
for (Object row : jsonObject.getJSONObject("Details").getJSONArray("row")) {
if (!(row instanceof JSONObject)) continue;
Map<Object, Object> values = new HashMap<>();
for (Object item : ((JSONObject) row).getJSONArray("item")) {
if (!(item instanceof JSONObject)) continue;
values.put(((JSONObject) item).get("name"), ((JSONObject) item).get("value"));
}
result.getJSONObject("Details").getJSONArray("row").put(values);
}
// Now result is in your format

相关内容

  • 没有找到相关文章

最新更新