繁体   English   中英

解析JSON抛出空对象

[英]Parsing json throwing null object

JSON INPUT(我已将其剪切并粘贴,因此括号中可能存在一些错误)。

 {"results":{"quote":[{"date":"2010-03-10","Date":"2010-03-10","Open":"16.51","High":"16.94","Low":"16.51","Close":"16.79","Volume":"33088600","Adj_Close":"16.79"},
{"date":"2010-03-09","Date":"2010-03-09","Open":"16.41","High":"16.72","Low":"16.40","Close":"16.53","Volume":"20755200","Adj_Close":"16.53"},
{"date":"2010-03-08","Date":"2010-03-08","Open":"16.32","High":"16.61","Low":"16.30","Close":"16.52","Volume":"30554000","Adj_Close":"16.52"},
{"date":"2010-03-05","Date":"2010-03-05","Open":"15.89","High":"16.38","Low":"15.89","Close":"16.06","Volume":"21415000","Adj_Close":"16.06"},
{"date":"2010-03-04","Date":"2010-03-04","Open":"15.55","High":"15.85","Low":"15.52","Close":"15.81","Volume":"22906000","Adj_Close":"}]}

JAVA代码

System.out.println(inputLine1);
            JSONObject json = (JSONObject) JSONSerializer.toJSON( inputLine1 ); 
            JSONObject pilot = json.getJSONObject("results");        

            JSONArray jsonMainArr = pilot.getJSONArray("quote");  

            for (int i = 0; i < jsonMainArr.size(); i++) 
            {  // **line 2**  
                JSONObject childJSONObject = jsonMainArr.getJSONObject(i);   
                String date = childJSONObject.getString("date");  
                String Date=childJSONObject.getString("Date");
                String Open=childJSONObject.getString("Open");
                String Close=childJSONObject.getString("Close");
                String High=childJSONObject.getString("High");
                String low=childJSONObject.getString("Low");
                String Volume=childJSONObject.getString("Volume");
                String Adj_close=childJSONObject.getString("Adj_Close");

                System.out.println(date);
                System.out.println(Open);


            }  

它说一个空对象。 我究竟做错了什么。

JSON不正确。 最后一个"未关闭:

{"results":{"quote":[..., {..., "Adj_Close":"}]}

这将导致无法解析quote的值,因此当您期望数组时,库返回null

暂无
暂无

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

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