With gson, is it possible to use a custom deserializer / serializer only on certain fields? The user guide shows how to register an adapter for an entire type, not for specific fields. The reason why I want this is because I parse a custom date format and store it in a long member field (as a Unix timestamp), so I don’t want to register a type adapter for all Long fields.
Is there a way to do this?
I also store Date values as
longin my objects for easy defensive copies. I also desired a way to override only the date fields when serializing my object and not having to write out all the fields in the process. This is the solution I came up with. Not sure it is the optimal way to handle this, but it seems to perform just fine.The
DateUtilclass is a custom class used here to get aDateparsed as aString.When the class is serialized, the
birthDatefield is returned as a formattedStringinstead of thelongvalue.