我正在从此链接解析JSON数据:
http://twyst.in/api/v1/near/30/30
由于数据太大,因此我仅在此处发布(问题)相关数据:
{“ info”:“ [{\” outlet \“:{\” __ v \“:1,\” _ id \“:\” 5316d59326b019ee59000026 \“,\” photos \“:[],\” twyst_meta \“: {\“ recommend_list \”:[],\“ reviews \”:[]},\“ outlet_meta \”:{\“ links \”:[],\“ status \”:\“ active \”,\“ account \“:[\” 531574eeae738d654c00000a \“,\” 535a1a1e827651ca03000122 \“]},\”属性\“:{\” dine_in \“:true,\” outdoor \“:true,\”空调_“:\”不可用\“,\”停车\“:\”可用\“,\”预订\“:\”不需要\“,\” wifi \“:\”不可用\“,\”标签\“:[ \“ Pizza \”,\“ Pasta \”,\“ Italian \”,\“ Galleria \”,\“ DLF Phase 4 \”],\“payment_options \“:[\”现金\“,\” amex \“,\” visa \“,\”主控“],\”美食“ \”:[\“意大利语\”,\“比萨饼”,\ “ Gelato \”],\“ timings \”:\“ 11 AM-11 PM”,\“ cost_for_two \”:{\“ min \”:3,\“ max \”:4}},\“链接\“:{\” other_urls \“:[],\” youtube_url \“:\” \“,\” twitter_url \“:\” \“,\” facebook_url \“:\”\“ \”,\“ twitter_url \”:\“ \”,\“ facebook_url \”:\“\“ \”,\“ twitter_url \”:\“ \”,\“ facebook_url \”:\“https://www.facebook.com/pages/Crusty-gourmet-pizza-more/390843954384130 \“,\” website_url \“:\” \“},\”联系人\“:{\”电子邮件\“:{ \“电子邮件\”:\“ [email protected] \”,\“人员\”:\“ \”},\“电话\”:{\“号码\”:\“ \”,\“固定电话\ “:\” 02355156616 \“,\” reg_mobile \“:[{\” _ id \“:\” 4639320000e4532779b17de7 \“,\” num \“:\” 9134000410 \“}
这不是JSON数据的结尾,它还在继续...
但是,当执行以下代码行时,我得到了JSONException。e.printStackTrace()方法告诉我存在typeMismatch错误。
JSONObject object = new JSONObject(str); //1
JSONArray array = object.getJSONArray("info"); //2
我尝试用以下代码替换第2行:
JSONObject newObject = object.getJSONObject("info");
但是在这里我也遇到了同样的问题。
我已经检查了完整的数据,它是正确的,没有语法错误。有人可以帮我解决这个问题吗?启动JSONArray之前出现双引号是否可以成为此问题的根源?
谢谢。
info
不是数组或对象。这是一个字符串,恰好包含另一个数组的JSON编码表示形式。您将必须获取该字符串并通过第二个JSON解码过程运行它:
JSONArray array = new JSONArray(object.getString("info"));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句