2013-09-25 5 views
-2

Это мой JSONObject, ответ от сервера:GSON десериализации в Java

{ 
status: 0, 
msg: "ok", 
user_lat: 0, 
user_lng: 0, 
requested_rows: 30, 
returned_rows: 30, 
query_id: "", 
page_repos: 30, 
poi_list: [ 
{ 
poi_id: 190, 
poi_name: "Ristea Antik ", 
poi_disp_address: "Holbergsgade 19, København K, 1057", 
poi_lat: 55678607, 
poi_lng: 12590144, 
poi_icon_url_generic: "/images/190.jpg", 
poi_icon_url: "/images/spec/190.jpg", 
poi_rating: 2, 
user_dist_to_poi: 456 
}, 
{ 
poi_id: 191, 
poi_name: "Galerie Bork", 
poi_disp_address: "Store Regnegade 2, København K, 1110", 
poi_lat: 55681371, 
poi_lng: 12581668, 
poi_icon_url_generic: "/images/191.jpg", 
poi_icon_url: "/images/spec/191.jpg", 
poi_rating: 2, 
user_dist_to_poi: 456 
}, 
{ 
poi_id: 192, 
poi_name: "Books & Curiosities", 
poi_disp_address: "Læderstræde 9, København K, 1201", 
poi_lat: 55678118, 
poi_lng: 12578220, 
poi_icon_url_generic: "/images/192.jpg", 
poi_icon_url: "/images/spec/192.jpg", 
poi_rating: 2, 
user_dist_to_poi: 456 
}, 
{ 
poi_id: 193, 
poi_name: "Otto Berg Art & Antiques", 
poi_disp_address: "Gothersgade 137, København K, 1123", 
poi_lat: 55685008, 
poi_lng: 12571328, 
poi_icon_url_generic: "/images/193.jpg", 
poi_icon_url: "/images/spec/193.jpg", 
poi_rating: 2, 
user_dist_to_poi: 456 
} 
} 

Он возвращает объект. В объекте JSON у меня есть также массивы JSON.

Пожалуйста, помогите мне, как десериализовать этот объект с помощью GSON.

+0

Благодаря Леннарт и Сунил Гупта для редактирования ... – bGorle

ответ

1

Просто Creata класс:

public class Response { 
    private status int; 
    private String msg; 
    private double user_lat; 
    ... 
    private Poi[] poi_list; 
    ... 
} 

public class Poi { 
    private long poi_id; 
    private String poi_name; 
    ... 
} 

А потом просто кал

Response response = new Gson().fromJson(jsonString, Response.class); 
+0

Но как получить доступ к этому ** poi_list **. Я новичок в GSON и JSON, поэтому я спрашиваю подробно. – bGorle

+0

Вы можете создать метод getter в классе Response. Что-то вроде этого: 'public Poi [] getPoiList() {return poi_list; } ', а затем просто вызовите' response.getPoiList(); ' – Blaz

+0

Да, я сделал то же самое ... Большое вам спасибо ... – bGorle

Смежные вопросы