繁体   English   中英

如何使用局部变量调用Json数据?

[英]How to call Json data using local variable?

我创建了一个Spinner字符串列表,该列表与Json String相同。 像这样:

微调列表:

list.add("AED");list.add("ALL");list.add("AMD");list.add("ANG");list.add("AOA");list.add("ARS");

杰森数据:

{"AED":4.065064,"AFN":86.705252,"ALL":121.591451,"AMD":525.502916,"ANG":1.94743,"AOA":404.690194,"ARS":62.08047}

我想通过从微调器列表中选择一个项目来调用Json数据。

当我从列表中传递字符串时,什么都没发生。

protected void onPostExecute(final String result) {
            super.onPostExecute(result);

            try {
                final JSONObject jsonObject= new JSONObject(result);
                String currencyDetails= jsonObject.getString("rates");
                Log.i("Value is",currencyDetails);

                firstSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                    @Override
                    public void onItemSelected(AdapterView<?> adapterView, View view, int first, long l) {

                        try {
                            String uniqueValue =jsonObject.getString(list.get(first));


                        } catch (JSONException e) {
                            e.printStackTrace();
                        }


                    }

有人可以告诉我,我可以做我想做的吗?

在线上有一个错误

 String uniqueValue = jsonObject.getString(list.get(first));

从给定的JSON数据来看,每个键值对都有双精度值。 您可以看到-

{"AED":4.065064,"AFN":86.705252,"ALL":121.591451,"AMD":525.502916,"ANG":1.94743,"AOA":404.690194,"ARS":62.08047}

因此,只需获取双精度值而不是字符串,就像这样-

String uniqueValue = jsonObject.getDouble(list.get(first));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM