Cách chuyển đổi timestamp sang kiểu dữ liệu datetime trong C#
Xin chào các bạn, bài viết hôm nay mình sẻ hướng dẫn các bạn cách chuyển đổi Timestamp sang kiểu dữ liệu ngày tháng DateTime trong lập trình C#, Winform.
Vậy TimeStamp là gì?
TimeStamp hay tên các bạn thường thấy là Unix timestamp.
Khái niệm quen thuộc trong hệ thống Unix và lập trình C#.
Thời gian Unix, là hệ thống nhằm diễn tả một điểm trên trục thời gian, theo trục thời gian nó sử dụng số giây kể để xác định thời điểm, với điểm gốc từ thời điểm 00:00:00 ngày 1/1/1970 (UTC).
Ví dụ lúc
00:00:00 - 1/1/2017
có giá trị timestamp là 1483228800
. Có nghĩa là tính từ 00h:00m:00s
ngày 1/1/1970
đến 00h:00m:00s
ngày 1/1/2017
là 1483228800
giây.12/09/2021 (17:05:02) ⇒ 1631441102
Hàm chuyển đổi tính đến đơn vị giây
C#:
public static DateTime UnixTimeStampToDateTime( double unixTimeStamp )
{
// Unix timestamp is seconds past epoch
DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
dateTime = dateTime.AddSeconds( unixTimeStamp ).ToLocalTime();
return dateTime;
}
Hàm thường hay được sử dụng tính đến milisecond
C#:
public static DateTime JavaTimeStampToDateTime( double javaTimeStamp )
{
// Java timestamp is milliseconds past epoch
DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
dateTime = dateTime.AddMilliseconds( javaTimeStamp ).ToLocalTime();
return dateTime;
}