二.后台时间格式
1.将北京时间转成UTC时间
#region 时间格式
#region 将北京时间转成UTC时间
///
/// 将北京时间转成UTC时间
///
///
///
public static DateTime DateTimeToUTC(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
double utc = (time - startTime).TotalSeconds;
startTime = startTime.AddSeconds(utc);
startTime = startTime.AddHours(8);//转化为北京时间(北京时间=UTC时间+8小时 )
return startTime;
}
#endregion
2.将UTC时间转成北京时间
#region 将UTC时间转成北京时间
///
/// 将UTC时间转成北京时间
///
///
///
public static DateTime UTCToDatetime(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
double utc = (time - startTime).TotalSeconds;
startTime = startTime.AddSeconds(utc);
startTime = startTime.AddHours(8);//转化为北京时间(北京时间=UTC时间+8小时 )
return startTime;
}
#endregion
3.获取时间戳
#region 获取时间戳
///
/// 获取时间戳
///
///
public static string GetTimeStamp()
{
TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
return Convert.ToInt64(ts.TotalSeconds).ToString();
}
#endregion
4. DateTime时间格式转换为Unix时间戳格式
#region DateTime时间格式转换为Unix时间戳格式
///
/// DateTime时间格式转换为Unix时间戳格式
///
///
DateTime时间格式
/// Unix时间戳格式
public static int ConvertDateTimeInt(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
return (int)(time - startTime).TotalSeconds;
}
#endregion
5.时间戳转为C#格式时间
#region 时间戳转为C#格式时间
///
/// 时间戳转为C#格式时间
///
///
Unix时间戳格式
/// C#格式时间
public static DateTime GetTime(string timeStamp)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(timeStamp + "0000000");
TimeSpan toNow = new TimeSpan(lTime);
return dtStart.Add(toNow);
}
#endregion
#endregion
6.//后台将时间戳转成日期格式
DateTime dt = DateTime.ParseExact(传入的时间格式, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture);
7.截取时间格式
DateTime d11t =Convert.ToDateTime(DateTime.ParseExact("2018/03/14 18", "yyyy/MM/dd HH", System.Globalization.CultureInfo.CurrentCulture).ToString("yyyy/MM/dd"));
8.几秒执行
DateTime dt1 = DateTime.Now;
while (true)
{
double seconds = (DateTime.Now - dt1).TotalSeconds;
if (seconds > 2)
break;
}