C# 获取当前时间戳
/// <summary> /// 时间戳 /// </summary> /// <param name="dateTime"></param> /// <returns></returns> public static Int64 getTimeStamp(DateTime dateTime) { TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); return Convert.ToInt64(ts.TotalSeconds); } /// <summary> /// 时间戳转本地时间 /// </summary> /// <param name="unixTimeStamp"></param> /// <returns></returns> public static DateTime getLocalDateTime(double unixTimeStamp) { System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); //当地时区 DateTime dtime = startTime.AddSeconds(unixTimeStamp); return dtime; }
https://www.cnblogs.com/yinmu/p/11228196.html
/// <summary> /// 获取时间戳 /// </summary> /// <returns></returns> public string GetTimeStamp() { TimeSpan ts = DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0); return Convert.ToInt64(ts.TotalSeconds).ToString(); } /// <summary> /// 获取时间戳 /// </summary> /// <returns></returns> public static string GetTimeStamp() { TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); return Convert.ToInt64(ts.TotalMilliseconds).ToString(); }
把数据库存的double类型时间戳转成日期时间 (下面这个功能是遍历DataTable,把原有的addTime(时间戳)转为现有add_time日期字符串)
DataColumn dc = null; //原来的数据上增加一列 dc = dt.Columns.Add("add_time", Type.GetType("System.String")); //日期 for (int i = 0; i < dt.Rows.Count; i++) { Console.WriteLine(dt.Rows[i]["addTime"].ToString()); double unixTimeStamp = 0; if (dt.Rows[i]["addTime"].ToString().Trim() == null || dt.Rows[i]["addTime"].ToString().Trim() == "") { unixTimeStamp = 0; } else { unixTimeStamp = Convert.ToDouble(pe.dt.Rows[i]["addTime"].ToString()); } System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区 DateTime dtime = startTime.AddMilliseconds(unixTimeStamp); //dt.Rows[i]["addTime"] = dtime;//不能覆盖原来值,报错类型不一致,所以要新建一个row dt.Rows[i]["add_time"] = dtime.ToString("yyyy/MM/dd HH:mm:ss"); //dt.Rows.Add(dr);//如果新实例化 DataRow dr = dt.NewRow(); 一个行,需要加入这行 }
转: https://www.cnblogs.com/yinmu/p/11228196.html