这种json 用gson 怎么解析啊

挤不上公交车的路人甲 2014-06-11 02:59:18
{"status":"OK","total_count":40,"count":2,
"businesses":
[{"business_id":17670412,"name":"心一代","branch_name":"","address":"徐汇区永升大厦往南附近","telephone":"","city":"上海","regions":["徐汇区","万体馆","光启城"],"categories":["快餐简餐"],"latitude":31.18276,"longitude":121.42771,"avg_rating":0.0,"rating_img_url":"http://i3.dpfile.com/s/i/app/api/32_0star.png","rating_s_img_url":"http://i1.dpfile.com/s/i/app/api/16_0star.png","product_grade":0,"decoration_grade":0,"service_grade":0,"product_score":0.0,"decoration_score":0.0,"service_score":0.0,"avg_price":0,"review_count":3,"distance":8,"business_url":"http://dpurl.cn/p/nn1RTMP4CA","photo_url":"http://i3.dpfile.com/pc/28e78b5dcc27ca2fb7355fdac370b13f(700x700)/thumb.jpg","s_photo_url":"http://i2.dpfile.com/pc/28e78b5dcc27ca2fb7355fdac370b13f(278x200)/thumb.jpg","has_coupon":0,"coupon_id":0,"coupon_description":"","coupon_url":"","has_deal":0,"deal_count":0,"deals":[],"has_online_reservation":0,"online_reservation_url":""},


{"business_id":4719819,"name":"露特餐厅","branch_name":"","address":"徐汇区中山西路3031号","telephone":"021-64863316","city":"上海","regions":["徐汇区","徐家汇","光启城"],"categories":["本帮菜"],"latitude":31.182552,"longitude":121.42742,"avg_rating":0.0,"rating_img_url":"http://i1.dpfile.com/s/i/app/api/32_0star.png","rating_s_img_url":"http://i3.dpfile.com/s/i/app/api/16_0star.png","product_grade":0,"decoration_grade":0,"service_grade":0,"product_score":0.0,"decoration_score":0.0,"service_score":0.0,"avg_price":0,"review_count":0,"distance":30,"business_url":"http://dpurl.cn/p/uEeVTp-QhG","photo_url":"http://i3.dpfile.com/2011-08-22/9245848_b.jpg(700x700)/thumb.jpg","s_photo_url":"http://i1.dpfile.com/2011-08-22/9245848_b.jpg(278x200)/thumb.jpg","has_coupon":0,"coupon_id":0,"coupon_description":"","coupon_url":"","has_deal":0,"deal_count":0,"deals":[],"has_online_reservation":0,"online_reservation_url":""}]}

我想获取 List<Business> bList
...全文
213 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 5 楼 wll1990310 的回复:
还有人比我更无聊吗? 给答案: 两个bean package com.example.gson; import java.util.ArrayList; public class AnsWer { private String status; private int total_count; private int count; private ArrayList<Business> businesses; public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public int getTotal_count() { return total_count; } public void setTotal_count(int total_count) { this.total_count = total_count; } public int getCount() { return count; } public void setCount(int count) { this.count = count; } public ArrayList<Business> getBusinesses() { return businesses; } public void setBusinesses(ArrayList<Business> businesses) { this.businesses = businesses; } } package com.example.gson; import java.util.ArrayList; public class Business { private int business_id; private String name; private String branch_name; private String address; private String telephone; private String city; private ArrayList<String> regions; private ArrayList<String> categories; private float latitude; private float longitude; private float avg_rating; private String rating_img_url; private String rating_s_img_url; private float product_grade; private float service_grade; private float product_score; private float decoration_score; private float service_score; private float avg_price; private float review_count; private float distance; private String business_url; private String photo_url; private String s_photo_url; private float has_coupon; private int coupon_id; private String coupon_description; private String coupon_url; private float has_deal; private float deal_count; private ArrayList<String> deals; private float has_online_reservation; private String online_reservation_url; public int getBusiness_id() { return business_id; } public void setBusiness_id(int business_id) { this.business_id = business_id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getBranch_name() { return branch_name; } public void setBranch_name(String branch_name) { this.branch_name = branch_name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getTelephone() { return telephone; } public void setTelephone(String telephone) { this.telephone = telephone; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public ArrayList<String> getRegions() { return regions; } public void setRegions(ArrayList<String> regions) { this.regions = regions; } public ArrayList<String> getCategories() { return categories; } public void setCategories(ArrayList<String> categories) { this.categories = categories; } public float getLatitude() { return latitude; } public void setLatitude(float latitude) { this.latitude = latitude; } public float getLongitude() { return longitude; } public void setLongitude(float longitude) { this.longitude = longitude; } public float getAvg_rating() { return avg_rating; } public void setAvg_rating(float avg_rating) { this.avg_rating = avg_rating; } public String getRating_img_url() { return rating_img_url; } public void setRating_img_url(String rating_img_url) { this.rating_img_url = rating_img_url; } public String getRating_s_img_url() { return rating_s_img_url; } public void setRating_s_img_url(String rating_s_img_url) { this.rating_s_img_url = rating_s_img_url; } public float getProduct_grade() { return product_grade; } public void setProduct_grade(float product_grade) { this.product_grade = product_grade; } public float getService_grade() { return service_grade; } public void setService_grade(float service_grade) { this.service_grade = service_grade; } public float getProduct_score() { return product_score; } public void setProduct_score(float product_score) { this.product_score = product_score; } public float getDecoration_score() { return decoration_score; } public void setDecoration_score(float decoration_score) { this.decoration_score = decoration_score; } public float getService_score() { return service_score; } public void setService_score(float service_score) { this.service_score = service_score; } public float getAvg_price() { return avg_price; } public void setAvg_price(float avg_price) { this.avg_price = avg_price; } public float getReview_count() { return review_count; } public void setReview_count(float review_count) { this.review_count = review_count; } public float getDistance() { return distance; } public void setDistance(float distance) { this.distance = distance; } public String getBusiness_url() { return business_url; } public void setBusiness_url(String business_url) { this.business_url = business_url; } public String getPhoto_url() { return photo_url; } public void setPhoto_url(String photo_url) { this.photo_url = photo_url; } public String getS_photo_url() { return s_photo_url; } public void setS_photo_url(String s_photo_url) { this.s_photo_url = s_photo_url; } public float getHas_coupon() { return has_coupon; } public void setHas_coupon(float has_coupon) { this.has_coupon = has_coupon; } public int getCoupon_id() { return coupon_id; } public void setCoupon_id(int coupon_id) { this.coupon_id = coupon_id; } public String getCoupon_description() { return coupon_description; } public void setCoupon_description(String coupon_description) { this.coupon_description = coupon_description; } public String getCoupon_url() { return coupon_url; } public void setCoupon_url(String coupon_url) { this.coupon_url = coupon_url; } public float getHas_deal() { return has_deal; } public void setHas_deal(float has_deal) { this.has_deal = has_deal; } public float getDeal_count() { return deal_count; } public void setDeal_count(float deal_count) { this.deal_count = deal_count; } public ArrayList<String> getDeals() { return deals; } public void setDeals(ArrayList<String> deals) { this.deals = deals; } public float getHas_online_reservation() { return has_online_reservation; } public void setHas_online_reservation(float has_online_reservation) { this.has_online_reservation = has_online_reservation; } public String getOnline_reservation_url() { return online_reservation_url; } public void setOnline_reservation_url(String online_reservation_url) { this.online_reservation_url = online_reservation_url; } } 需要jar : gson-2.1.jar 解析:AnsWer ansWer = null; Gson gson = new Gson(); ansWer = gson.fromJson(content,AnsWer.class); 解析完毕
请问你解析出来了吗 我也是这写,为什么一直报错呢 Expected a string but was BEGIN_OBJECT at line 1 column 40
dtwll 2014-06-11
  • 打赏
  • 举报
回复
还有人比我更无聊吗? 给答案: 两个bean package com.example.gson; import java.util.ArrayList; public class AnsWer { private String status; private int total_count; private int count; private ArrayList<Business> businesses; public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public int getTotal_count() { return total_count; } public void setTotal_count(int total_count) { this.total_count = total_count; } public int getCount() { return count; } public void setCount(int count) { this.count = count; } public ArrayList<Business> getBusinesses() { return businesses; } public void setBusinesses(ArrayList<Business> businesses) { this.businesses = businesses; } } package com.example.gson; import java.util.ArrayList; public class Business { private int business_id; private String name; private String branch_name; private String address; private String telephone; private String city; private ArrayList<String> regions; private ArrayList<String> categories; private float latitude; private float longitude; private float avg_rating; private String rating_img_url; private String rating_s_img_url; private float product_grade; private float service_grade; private float product_score; private float decoration_score; private float service_score; private float avg_price; private float review_count; private float distance; private String business_url; private String photo_url; private String s_photo_url; private float has_coupon; private int coupon_id; private String coupon_description; private String coupon_url; private float has_deal; private float deal_count; private ArrayList<String> deals; private float has_online_reservation; private String online_reservation_url; public int getBusiness_id() { return business_id; } public void setBusiness_id(int business_id) { this.business_id = business_id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getBranch_name() { return branch_name; } public void setBranch_name(String branch_name) { this.branch_name = branch_name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getTelephone() { return telephone; } public void setTelephone(String telephone) { this.telephone = telephone; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public ArrayList<String> getRegions() { return regions; } public void setRegions(ArrayList<String> regions) { this.regions = regions; } public ArrayList<String> getCategories() { return categories; } public void setCategories(ArrayList<String> categories) { this.categories = categories; } public float getLatitude() { return latitude; } public void setLatitude(float latitude) { this.latitude = latitude; } public float getLongitude() { return longitude; } public void setLongitude(float longitude) { this.longitude = longitude; } public float getAvg_rating() { return avg_rating; } public void setAvg_rating(float avg_rating) { this.avg_rating = avg_rating; } public String getRating_img_url() { return rating_img_url; } public void setRating_img_url(String rating_img_url) { this.rating_img_url = rating_img_url; } public String getRating_s_img_url() { return rating_s_img_url; } public void setRating_s_img_url(String rating_s_img_url) { this.rating_s_img_url = rating_s_img_url; } public float getProduct_grade() { return product_grade; } public void setProduct_grade(float product_grade) { this.product_grade = product_grade; } public float getService_grade() { return service_grade; } public void setService_grade(float service_grade) { this.service_grade = service_grade; } public float getProduct_score() { return product_score; } public void setProduct_score(float product_score) { this.product_score = product_score; } public float getDecoration_score() { return decoration_score; } public void setDecoration_score(float decoration_score) { this.decoration_score = decoration_score; } public float getService_score() { return service_score; } public void setService_score(float service_score) { this.service_score = service_score; } public float getAvg_price() { return avg_price; } public void setAvg_price(float avg_price) { this.avg_price = avg_price; } public float getReview_count() { return review_count; } public void setReview_count(float review_count) { this.review_count = review_count; } public float getDistance() { return distance; } public void setDistance(float distance) { this.distance = distance; } public String getBusiness_url() { return business_url; } public void setBusiness_url(String business_url) { this.business_url = business_url; } public String getPhoto_url() { return photo_url; } public void setPhoto_url(String photo_url) { this.photo_url = photo_url; } public String getS_photo_url() { return s_photo_url; } public void setS_photo_url(String s_photo_url) { this.s_photo_url = s_photo_url; } public float getHas_coupon() { return has_coupon; } public void setHas_coupon(float has_coupon) { this.has_coupon = has_coupon; } public int getCoupon_id() { return coupon_id; } public void setCoupon_id(int coupon_id) { this.coupon_id = coupon_id; } public String getCoupon_description() { return coupon_description; } public void setCoupon_description(String coupon_description) { this.coupon_description = coupon_description; } public String getCoupon_url() { return coupon_url; } public void setCoupon_url(String coupon_url) { this.coupon_url = coupon_url; } public float getHas_deal() { return has_deal; } public void setHas_deal(float has_deal) { this.has_deal = has_deal; } public float getDeal_count() { return deal_count; } public void setDeal_count(float deal_count) { this.deal_count = deal_count; } public ArrayList<String> getDeals() { return deals; } public void setDeals(ArrayList<String> deals) { this.deals = deals; } public float getHas_online_reservation() { return has_online_reservation; } public void setHas_online_reservation(float has_online_reservation) { this.has_online_reservation = has_online_reservation; } public String getOnline_reservation_url() { return online_reservation_url; } public void setOnline_reservation_url(String online_reservation_url) { this.online_reservation_url = online_reservation_url; } } 需要jar : gson-2.1.jar 解析:AnsWer ansWer = null; Gson gson = new Gson(); ansWer = gson.fromJson(content,AnsWer.class); 解析完毕
Mr-稻帅 2014-06-11
  • 打赏
  • 举报
回复
可以构造出模型对象,或者使用fastjson解析。。
marlenna 2014-06-11
  • 打赏
  • 举报
回复
使用fastjson来解析吧,很简单的
  • 打赏
  • 举报
回复
有人帮忙看看不?
  • 打赏
  • 举报
回复
数组里面还有字符串数组 是不是在构建类的时候 就直接 创建 String [] ss ,这样相应的数组就行了

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧