c# 获取时间戳

#region 获取当前时间戳

//1.方法一
//ToUniversalTime()将当前DateTime对象的值转换为世界标准时间(UTC)
TimeSpan mTimeSpan = DateTime.Now.ToUniversalTime() - new DateTime(1970, 1, 1, 0, 0, 0);
//得到精确到秒的时间戳(长度10位)
long time = (long)mTimeSpan.TotalSeconds;
Console.WriteLine("demo1:" + time);

//2.方法二(同一)
TimeSpan ts = DateTime.Now.ToUniversalTime() - new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
string time2 = Convert.ToInt64(ts.TotalSeconds).ToString();
Console.WriteLine("demo2:" + time2);

//3.方法三
// .NET 4.6及更高版本里才能使用
long timeStamp = DateTimeOffset.Now.ToUnixTimeSeconds(); // 相差秒数
Console.WriteLine("demo3:" + timeStamp);

//4.方法四
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
long timeStamp1 = (long)(DateTime.Now - startTime).TotalSeconds; // 相差秒数
System.Console.WriteLine("demo4:" + timeStamp1);

#endregion 获取当前时间戳

你可能感兴趣的:(c#,开发语言)