android - 如何将符号列表响应从 fixer.io 转换为 json arraylist?(如何将 JSON 键值对转换为 JSON Array)
问题描述
我想用currencyName
and显示货币列表currencyCode
,但得到像这样的响应
{
"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();
}
推荐阅读
- apache - 匹配 HTTP_HOST 和 REQUEST_URI
- c - 使用左键箭头向左移动而不是使用 fgets 输入字符
- ios - 子视图高度匹配滚动视图父高度
- sql - 跨范围应用计算
- dialogflow-es - Dialogflow:“递归”意图流(回顾/编辑/确认并返回)
- python - Plotly:如何使用 plotly 和 plotly express 绘制回归线?
- firebase - Two identical GCP Projects but in one the Cloud Functions fails to load the default credentials
- java - UCanAccess - 如何在 MS Access 中创建 VARCHAR 外键?出现“关系中缺少列”错误
- java - out of order processing of a Flux of input using Reactor
- ios - Swift 崩溃 Crashlytics 0x0000000104fbdf84