JavaScript和C#时间戳交互经常数据不一样,收集了一个可以对应的方法
JS
获取时间戳
var dt = new Date().getTime();//时间戳
时间转时间戳
var d = new Date(data); //时间戳转时间 alert(formatDate(d)); //格式化时间 function formatDate(now) { var year=now.getFullYear(); var month=now.getMonth()+1; var date=now.getDate(); var hour=now.getHours(); var minute=now.getMinutes(); var second=now.getSeconds(); return year+ "-"+month+ "-"+date+ " "+hour+":" +minute+":" +second; }
C#
时间戳转时间
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime( new DateTime(1970, 1, 1)); long lTime = long.Parse(dt + "0000"); //说明下,时间格式为13位后面补加4个"0",如果时间格式为10位则后面补加7个"0",至于为什么我也不太清楚,也是仿照人家写的代码转换的 TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); //得到转换后的时间
时间转时间戳
System. DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime( new System. DateTime(1970, 1, 1, 0, 0, 0, 0)); DateTime dtResult = DateTime.Now;//获取时间 long t = (dtResult.Ticks - startTime.Ticks) / 10000;//除10000调整为13位