时间戳TimeStamp与DateTime的转换
Sql Server2005中TimeStamp转换为DateTime
DECLARE @Time NVARCHAR(15)
SET @Time='1294761599'
SELECT DATEADD(s,convert(int,@Time),'1970-01-01 08:00:00') as DTime
这样就将TimeStamp转换成为了我们想要的DateTime格式,我在网上找资料的时候看时间都是写成'1970-01-01 00:00:00',而我在实际中却发现所有结果都比实际时间小8小时,这不知道是为啥?真的很郁闷。
C#中TimeStamp转换为DateTime
/// <summary> /// 将时间戳TimeStamp转换为DateTime /// </summary> /// <param name="timeStamp"></param> /// <returns></returns> public string GetRealTime(string timeStamp) { DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970,1,1)); long lTime = long.Parse(timeStamp+"0000000"); TimeSpan toNowTime = new TimeSpan(lTime); return startTime.Add(toNowTime).ToString("yyyy-MM-dd HH:mm:ss"); }