1 /// <summary> 2 /// 將 DateTime 轉換為 Unix 時間戳 3 /// </summary> 4 /// <param name="dateTime">需要轉換的時間</param> 5 /// <returns>Unix 時間戳</returns> 6 public static long DateTimeToUnixTime(DateTime dateTime) 7 { 8 return (long)(dateTime - TimeZoneInfo.ConvertTime(new DateTime(1970, 1, 1, 0, 0, 0), TimeZoneInfo.Local)).TotalSeconds; 9 }
1 /// <summary> 2 /// 將 Unix 時間戳轉換為 DateTime 3 /// </summary> 4 /// <param name="timestamp">Unix 時間戳</param> 5 /// <returns>需要轉換的時間</returns> 6 public static DateTime UnixTimeToDateTime(long timestamp) 7 { 8 if (timestamp < 0) 9 throw new ArgumentOutOfRangeException("timestamp is out of range"); 10 11 return TimeZoneInfo.ConvertTime(new DateTime(1970, 1, 1, 0, 0, 0), TimeZoneInfo.Local).AddSeconds(timestamp); 12 }