我有一个json存储在这样的数据库中,
"supported_iso_codes":[
{
"EUR": "978",
"USD": "840"
}
],
要在我的应用代码中访问此内容,我会执行以下操作..
getISOProfileDB.getSupportedISOCodes();
我有一个用户输入的字符串(提供欧元,美元等输入字符串)。如何将上面的json转换为HashMap并将其与另一个字符串进行比较?我想要实现的是,
以下是我想要实现的目标,
tran.setCurrency(hashMapOfJson.get(currencyString));
答案 0 :(得分:0)
使用Gson:
dependencies {
compile 'com.google.code.gson:gson:2.2.4'
}
然后:
Map<String, Object> supported_iso_codes = new Gson().fromJson(getISOProfileDB.getSupportedISOCodes(), new TypeToken<HashMap<String, Object>>() {}.getType());
答案 1 :(得分:0)
你可以做这样的事情
Gson gson = new Gson();
Type type = new TypeToken<List<Map<String, String>>>(){}.getType();
final ArrayList<HashMap<String,String>> isoCodesMapList = gson.fromJson(data, type);
System.out.println(arrayList);
然后获取用户选择的货币
isoCodesMapList.get(userSelectedCurrency);
希望这会有所帮助:)
答案 2 :(得分:-1)
您应该考虑使用JSONObject(Jsonobject.org)或Gson。