【发布时间】:2011-05-01 01:43:20
【问题描述】:
我需要反序列化 json,它是一个日期/长值数组。以下是返回的 JSON 示例:
[{"2011-04-30T00:00:00-07:00":100}, {"2011-04-29T00:00:00-07:00":200}]
使用 GSON,我可以将其反序列化为 List<Map<Date,String>>,但希望能够将其转换为 List<MyCustomClass>,类似于:
public class MyCustomClass() {
Date date;
Long value;
}
我似乎找不到一种方法来指示 GSON 将 JSON 映射的键/值映射到我的自定义类中的日期/值字段。有没有办法做到这一点,或者地图列表是唯一的路线?
【问题讨论】:
-
除非你的文档看起来像
[{"date":"2011"2011-04-30T00:00:00-07:00","value":100}, {"date":"2011-04-29T00:00:00-07:00","value":200}] -
@lobster:真的吗?我的回答另有说明(并在您发表评论之前发布)
-
@Matt - 我的解决方案是在输入端,如果他的文档是我推荐的方式,他可以直接完成
gson.fromJSON(inputJson, List<MyCustomClass.class>)而无需经过大量代码。但我同意,您的解决方案更通用,可以立即满足他的需求。
标签: java serialization gson deserialization