UNIX时间与本地时间的转换
所谓UNIX时间,维基百科的解释:UNIX时间,或称POSIX时间是UNIX或类UNIX系统使用的时间表示方式:从协调世界时1970年1月1日0时0分0秒起至现在的总秒数,不包括闰秒
知道了是什么,就容易转换了,就是我们的本地时间与协调世界时之间的差值,以秒为单位,但有一点要注意的是,协调世界时是指零时区的1970-1-1 00:00:00,而不是本地时间
/// <summary> /// 本地时间转格林威治时间 /// </summary> /// <param name="time">本地时间</param> /// <returns>返回单位秒</returns> public static int ConvertDateTimeInt(System.DateTime time) { int intResult = 0; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); intResult = (int)(time - startTime).TotalSeconds; return intResult; }
/// <summary> /// 格林威治时间转本地时间 /// </summary> /// <param name="d"></param> /// <returns></returns> public static System.DateTime ConvertIntDateTime(int d) { System.DateTime time = System.DateTime.MinValue; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); time = startTime.AddSeconds(d); return time; }