2 o 1001 o O_1001_O 于 2013.06.27 13:40 提问

android-无法获取josn的值

下面的代码来解析json:

for(int i = 0; i < json.getJSONArray("JSON").length(); i++) {
                String taste = json.getJSONArray("JSON").getJSONObject(i).getString("taste");
                String rate = json.getJSONArray("JSON").getJSONObject(i).getString("rate");
                int foo = Integer.parseInt(rate);
                count = count + foo;


                //create object
                BeerTastes tempTaste = new BeerTastes(taste, rate);

                //add to arraylist
                tasteList.add(tempTaste);

                Log.d("taste",tempTaste.taste);
                Log.d("number",tempTaste.percent);
            }

但是log没有输出任何值。

json:

[{"taste":"Bitter","rate":"13"},{"taste":"Malty","rate":"3"},{"taste":"Smooth","rate":"3"},{"taste":"Dry","rate":"1"}]

我想可能是这句错了:

json.getJSONArray("JSON") 

1个回答

cj6585256
cj6585256   2013.06.27 13:48
已采纳

直接

JsonObject jo= JsonObject("yourJson");
for(int i=0;i<jo.length;i++) {
String value = jo.optString("key");
}
O_1001_O
O_1001_O 谢谢~
接近 5 年之前 回复
cj6585256
cj6585256 你那个JsonArray根本没有key为JSON,json.getJSONArray("JSON") 这样获取返回的就是null了
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!