Javatpoint Logo
Javatpoint Logo

DateTimeOffset.FromUnixTimeMilliseconds() Method in C#

DateTimeOffset.FromUnixTimeMilliseconds() Method converts the Unix timestamps represented in milliseconds into 'DataTimeOffset' instances. UNIX time, which counts the seconds that have elapsed since January 1, 1970, 00:00:00 UTC, lacks the time zone information. This method allows developers to bridge this gap by creating 'DataTimeOffset' objects that retain the data and time information and incorporate the associated time zone offset. It is useful for representing precise time representation, including time zone awareness, which is essential when dealing with globalized applications, distributed systems, and synchronization across various time zones.

UNIX time

UNIX time or the Posix time is a system for tracking time using a simple count of seconds that have elapsed since the "Epoch" January 1, 1970, 00:00:00 UTC. The concept eliminates the complexities associated with time zones and daylight-saving time, providing a standardized way to represent time across different platforms.


DateTime is used to represent dates and times in C#. It lacks the information about time offsets and time zones. However, the DateTimeOffset will include an offset from UTC, making it suitable where time zone awareness is essential. The DataTimeOffset. fromUnixTimeMilliseconds() method is useful when working with Unix timestamps, which converts them into DateTimeOffset instances, preserving the date and time information and the time zone offset.

UNIX time does not account for leap seconds; occasional adjustments are made to Coordinated Universal Time to account for irregularities in the Earth's rotation. So, the Unix time system may have a slight discrepancy with actual astronomical time.


The syntax for the DateTimeOffset.FromUnixTimeMilliseconds() method.

public static DateTimeOffset FromUnixTimeMilliseconds(long milliseconds);


DateTimeOffset.FromUnixTimeMilliseconds() Method in C#


This program is used to convert the Unix timestamp to a DateTimeOffset instance. The variable unixTimeStampMilliseconds is of long datatype and holds the Unix timestamp in milliseconds. After that, the DateTimeOffset.FromUnixTimeMilliseconds() method is called with Unix timestamp as an argument, creating a DateTimeOffset instance. Finally, both the original Unix timestamp and DateTimeOffset are displayed.


Let us take another C# program to Handle Time Zone.


DateTimeOffset.FromUnixTimeMilliseconds() Method in C#


This C# program is used to demonstrate the conversion of a Unix timestamp representing the specific event's time given in milliseconds to a DataTimeOffset object, considering a different time zone offset.

The variables used in the program are 'eventTimestampMilliseconds', which represents a Unix timestamp in milliseconds; 'eventTimeZoneOffset', which represents a TimeSpan with a specific time zone offset; 'TimeSpan.FromHours(-5)' indicates the time zone where the event occurred. The 'eventDatetimeOffset' stores the result of converting the Unix timestamp to a 'DateTimeOffset' with the specified time zone offset.

DateTimeOffset.fromUnixTimeMilliseconds (eventTimestampMilliseconds) method will convert the Unix timestamp to the DateTimeOffset instance. The ToOffset(eventTimeZoneOffset) method will adjust the time zone offset of the 'DateTimeOffset' instance to the specified offset.

At last, the program displays the original Unix timestamp and the resulting DateTimeOffset with the custom time zone offset.


In conclusion, the DateTimeOffset.FromUnixTimeMilliseconds() method in C# is crucial in seamlessly converting Unix timestamps, measured in milliseconds, into DateTimeOffset instances. This method addresses the inherent lack of time zone information in UNIX time, providing developers with a means to create DateTimeOffset objects that capture the date and time accurately and incorporate the essential time zone offset. It is especially beneficial in scenarios requiring precise time representation, including globalized applications, distributed systems, and synchronization across various time zones. As we navigate the intricacies of timekeeping in programming, the DateTimeOffset.FromUnixTimeMilliseconds() method is a reliable tool, enabling developers to bridge the gap between Unix timestamps and comprehensive, time zone-aware DateTimeOffset representations.

Youtube For Videos Join Our Youtube Channel: Join Now


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA