Android 如何将符号列表响应从fixer.io转换为json arraylist?(如何将JSON键值对转换为JSON数组)
我想显示带有currencyName和currencyCode的货币列表, 但是得到的回应是Android 如何将符号列表响应从fixer.io转换为json arraylist?(如何将JSON键值对转换为JSON数组),android,json,arraylist,gson,retrofit,Android,Json,Arraylist,Gson,Retrofit,我想显示带有currencyName和currencyCode的货币列表, 但是得到的回应是 { "success": true, "symbols": { "AED": "United Arab Emirates Dirham", "AFN": "Afghan Afghani" } } 我怎样才能把它转换成 { "success&q
{
"success": true,
"symbols": {
"AED": "United Arab Emirates Dirham",
"AFN": "Afghan Afghani"
}
}
我怎样才能把它转换成
{
"success": true,
"symbols": [{
"code": "AED",
"name": "United Arab Emirates Dirham"
},
{
"code": "AFN",
"name": "Afghan Afghani"
}
]
}
我想在Android应用程序中显示列表。尝试以下方法:
JSONObject resultObject = new JSONObject();
try {
resultObject.put("success",true);
JSONArray jsonArray= new JSONArray();
JSONObject jsonObject=new JSONObject(yourJsonString);
JSONObject jsymbol= jsonObject.getJSONObject("symbols");
Iterator<String> iter = jsymbol.keys(); //This should be the iterator you want.
while(iter.hasNext()){
String key = iter.next();
String value = (String) jsymbol.get(key);
JSONObject jsonObject1=new JSONObject();
jsonObject1.put("code",key);
jsonObject1.put("name",value);
jsonArray.put(jsonObject1);
}
resultObject.put("symbols",jsonArray);//This will give you result you want
} catch (JSONException e) {
e.printStackTrace();
}