2025年3月11日 星期二 甲辰(龙)年 月初十 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > .net

Mysql Unix_TimeStamp转C#.net DataTime

时间:11-27来源:作者:点击数:108

我们先来看一下MySQL UNIX_TIMESTAMP()的描述:

returns a Unix timestamp in seconds

since ‘1970-01-01 00:00:00’ UTC as an unsigned integer

if no arguments are passed with UNIX_TIMESTAMP().

从上面的描述中可以看到它返回了一个从1970-01-01 00:00:00UTC时间到现在的秒数,它是一个无符号整数,因此我们在转化成.net的DataTime时,要从1970-01-01 00:00:00时开始加上这么多秒数,最后得到DateTime的时间,考虑到换算过来是UTC时间,还要把它转化成一个本地时间,代码如下:

  • public static DateTime UnixTimeStampToDateTime( int unixTimeStamp )
  • {
  • System.DateTime dtDateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
  • dtDateTime = dtDateTime.AddSeconds( unixTimeStamp ).ToLocalTime();
  • return dtDateTime;
  • }

生成TimeStamp:

  • public static int GetTimestamp(DateTime datetime)
  • {
  • System.DateTime date1970 = new DateTime(1970,1,1,0,0,0,System.DateTimeKind.Utc);
  • return (int)(datetime-date1970).TotalSeconds;
  • }

参考链接:

How to convert UNIX timestamp to DateTime and vice versa?

MySQL Date and Time functions

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门