热门定制解析GSON?

时间:2015-02-12 12:14:54

标签: java gson

我的JSON对象是这样的:

{

    "id": 911,
    "slug": "andreas-nikotini",
    "title": "Nikotini (Greek-Russian Dance Pop)",
    "picture": "https://s3-eu-west-1.amazonaws.com/ellostatic/video_thumb/911/53e29f833eb372c72d127a298723edf9.jpeg",
    "artists": 

[

        {
            "name": "Andreas"
        }
    ],
    "favorite_count": 0,
    "like_count": 177,
    "view_count": 29752,
    "is_favorite": false

}

我将它解析为下一个对象:

public class RelatedVideoGSON {

    int                   id;
    String                slug;
    String                title;
    String                picture;
    String                favorite_count;
    ArrayList<ArtistGSON> artists;
    String                like_count;
    String                view_count;
    boolean               is_favorite;
}

其中like_count,view_count和favorite_count是整数 我想在Integers中添加千位分隔符,而对象正在解析。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我能想到的最简单的方法是:(如果是我,我不会费心去挖掘Gson解析机制:-))

  • 将字符串/ json解析为常规HashMap<Object, Object>地图
  • 根据需要修改特定的键值。
  • 再次将修改后的地图转储到string / json。
  • 将转储的字符串/ json重新解析为您想要的最终对象。

这个程序可能看起来并不优雅,但问题本身并不优雅,逗号分割的字符串表示像4,532,345这样的数字应该只在最前端完成而不是存储在结构中。


PS:您可以通过以下代码解析字符串中的常规HashMap:

HashMap<Object, Object> m = gson.fromJson(s, new TypeToken<Map<Object, Object>>(){}.getType());