C# 常用时间格式处理, 20190510整理
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
DateTime.Now.ToString("yyyyMMddHHmmss"); // 20171108204539
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); // 2017-11-08 20:45:39
DateTime.Now.ToString("HHmmss"); // 204539
// 获取当前时间戳 1556179343
TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
Console.WriteLine(Convert.ToInt64(ts.TotalSeconds).ToString());
// 时间戳转时间
private static DateTime StampToDateTime(string timeStamp)
{
DateTime dateTimeStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(timeStamp + "0000000");
TimeSpan toNow = new TimeSpan(lTime);
return dateTimeStart.Add(toNow);
}
使用:
DateTime d = StampToDateTime("1556179343");
Console.WriteLine(d.ToString("yyyy-MM-dd HH:mm:ss")); // 2019-04-25 16:02:23
// DateTime时间格式转换为Unix时间戳格式 1556179343
private static int DateTimeToStamp(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
return (int)(time - startTime).TotalSeconds;
}
// 时间加上秒
DateTime.Now.AddSeconds(500).ToString("yyyy年MM月dd日 HH时mm分ss秒"); // 500秒后的时间
// 时间倒退
DateTime.Now.AddSeconds(-500).ToString("yyyy年MM月dd日 HH时mm分ss秒"); // 500秒前的时间
更多精彩

