我見過不少人遇到了GSON庫的問題 - 我仍然找不到解決我的問題的方法。通過GSON解析Twitter公共時間線(JSON)到Java對象
我想要實現的是將JSON從Twitter's public timeline解析爲帶有GSON的POJO。
以下是我的Twitter的JSON結構的表示:
public class OneTweet {
public OneTweet()
{
// Empty constructor
}
public String coordinates;
public String favorited;
public String created_at;
public String truncated;
public String text;
public String contributors;
public String id;
public String geo;
public String in_reply_to_user_id;
public String place;
public String in_reply_to_screen_name;
//public user user;
public List<user> user;
public String source;
public String something;
}
public class user {
public String name;
public String profile_sidebar_border_color;
public String profile_background_tile;
public String profile_sidebar_fill_color;
public String created_at;
public String profile_image_url;
public String location;
public String profile_link_color;
public String follow_request_sent;
public String url;
public String favourites_count;
public String contributors_enabled;
public String utc_offset;
public String id;
public String profile_use_background_image;
public String profile_text_color;
// protected is a reserved identifier
public String pprotected;
public String followers_count;
public String lang;
public String notifications;
public String time_zone;
public String verified;
public String profile_background_color;
public String geo_enabled;
public String description;
public String friends_count;
public String statuses_count;
public String profile_background_image_url;
public String following;
public String in_reply_to_status_id;
public String screen_name;
}
Map<String, OneTweet> json_string_array = googlejson.fromJson(jsonstring, new TypeToken<Map<String, OneTweet>>(){}.getType());
我目前得到以下錯誤:
Exception in thread "main" com.google.gson.JsonParseException: Expecting object found: false
我猜測我的POJO結構是錯誤的,或者它可能與JSON對象「protected」是Java中的受保護標識符有關。如果後者是這種情況,我不知道如何解決它。
如果您在包裹`嘗試{...}趕上(例外五)調用這是什麼輸出{e.printStackTrace(); ``? – mckamey 2010-11-27 20:45:52