ahausladen / JsonDataObjects

JSON parser for Delphi 2009 and newer
MIT License
413 stars 160 forks source link

More friendly to TimeZones #35

Open erayhanoglu opened 7 years ago

erayhanoglu commented 7 years ago

Added TimeZone firendly abilities.

The new TDateTimeTZ record is used to store datetime values. TDateTimeTZ stores both original time and offset values. It has some helper function to convert original time to UTCTime, LocalTime or any other offset.

TDateTimeTZ values can be accesed from objects and arrays. Etc. Obj.Z['field'] returns a TDateTimeTZ value.

A new configuration record "JsonDeserializationConfig" has been added. It has UseLocalTime property to control how stored TDateTimeTZ values will be cast to TDateTime valus. When UseLocalTime is True (default) TDateTimeTZ values will be cast as LocalTime. Otherwise OrgTime will be used.