如何遍历 Complex JSON 并放入 Map 中?
How to Traverse Complex JSON and put into a Map?
我试了几天才完成。但不能。
我想要的是遍历任何给定的 JSON 并将键值对放入映射中。作为示例考虑这个 JSON
String test = {
"RechargeRequest":{
"RechargeSerialNo":"2645",
"RechargeChannelID":"3",
"RechargeObj":{
"SubAccessCode":{
"PrimaryIdentity":"763500001"
}
},
"RechargeInfo":{
"CashPayment":[
{
"Amount":"30"
}
]
}
}
}
到目前为止我尝试了什么
JSONObject jsonObj = new JSONObject(test);
Iterator<String> keys = jsonObj.keys();
Map<String,String> map = new HashMap<>();
while(keys.hasNext()) {
String key = keys.next();
if (jsonObj.get(key) instanceof JSONObject) {
}else if(jsonObj.get(key) instanceof JSONArray){
}else{
}
}
地图值应该类似于 ("RechargeChannelID","3")
("Amount":"30")
有人可以帮我吗?
谢谢,
如果我理解正确,您想将 json 文件展平为一个级别,然后将其映射到键值对,请检查下面的 link:
How to deserialize JSON into flat, Map-like structure?
我试了几天才完成。但不能。
我想要的是遍历任何给定的 JSON 并将键值对放入映射中。作为示例考虑这个 JSON
String test = {
"RechargeRequest":{
"RechargeSerialNo":"2645",
"RechargeChannelID":"3",
"RechargeObj":{
"SubAccessCode":{
"PrimaryIdentity":"763500001"
}
},
"RechargeInfo":{
"CashPayment":[
{
"Amount":"30"
}
]
}
}
}
到目前为止我尝试了什么
JSONObject jsonObj = new JSONObject(test);
Iterator<String> keys = jsonObj.keys();
Map<String,String> map = new HashMap<>();
while(keys.hasNext()) {
String key = keys.next();
if (jsonObj.get(key) instanceof JSONObject) {
}else if(jsonObj.get(key) instanceof JSONArray){
}else{
}
}
地图值应该类似于 ("RechargeChannelID","3") ("Amount":"30")
有人可以帮我吗?
谢谢,
如果我理解正确,您想将 json 文件展平为一个级别,然后将其映射到键值对,请检查下面的 link: How to deserialize JSON into flat, Map-like structure?