如何才能将此JsonObject
映射到JsonArray
以获得关键和价值?如何将json对象映射到Java中的jsonarray?
我想使用该值来填充微调器,并将键设置为从微调器中选择的项目的ID。
"data": {
"214": "FIRST CITY MONUMENT BANK PLC",
"215": "UNITY BANK PLC",
"221": "STANBIC IBTC BANK PLC",
"232": "STERLING BANK PLC",
"301": "JAIZ BANK",
"304": "Stanbic Mobile",
"305": "PAYCOM",
"307": "Ecobank Mobile",
"309": "FBN MOBILE",
"311": "Parkway",
"315": "GTBank Mobile Money",
"322": "ZENITH Mobile",
"323": "ACCESS MOBILE",
"401": "Aso Savings and Loans",
"044": "ACCESS BANK NIGERIA",
"014": "AFRIBANK NIGERIA PLC",
"063": "DIAMOND BANK PLC",
"050": "ECOBANK NIGERIA PLC",
"084": "ENTERPRISE BANK LIMITED",
"070": "FIDELITY BANK PLC",
"011": "FIRST BANK PLC",
"058": "GTBANK PLC",
"030": "HERITAGE BANK",
"082": "KEYSTONE BANK PLC",
"076": "SKYE BANK PLC",
"068": "STANDARD CHARTERED BANK NIGERIA LIMITED",
"032": "UNION BANK OF NIGERIA PLC",
"033": "UNITED BANK FOR AFRICA PLC",
"035": "WEMA BANK PLC",
"057": "ZENITH BANK PLC"
}
这是我的代码,但它不工作。我正在使用谷歌的Volley库。我被告知将JsonObject
转换为JsonArray
。
private void getData() {
JsonObjectRequest obreq = new JsonObjectRequest(Request.Method.GET, serverUrl_list,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray obj = response.getJSONArray("Data");
for (int k=0; k<obj.length(); k++) {
while (mapIterator.hasNext()) {
Map.Entry mapEntry = (Map.Entry) mapIterator.next();
Integer keyValue = (Integer) mapEntry.getKey();
String value = (String) mapEntry.getValue();
//iterate over the array and print each value
for (int i=0; i<mapEntry.; i++) {
System.out.print(value[i] + " ");
}
System.out.println();
}
}
students.add(obj.getString("Data"));
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item, students);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Bank.setAdapter(spinnerAdapter);
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("Volley", "Error");
}
}
);
RequestQueue requestQueue = Volley.newRequestQueue(getActivity());
requestQueue.add(obreq);
}
如果我理解正确,你想将一个'Map'转换成'List >'?如果你会显示一些代码,将不胜感激。 –
4castle
我想转换成带有“id”和“bankname”的jsonarray,并用“bankname”填充我的微调并将“id”设置为bank –
上面的json没有任何jsonarray。所以你的代码时,错了 –