下面小編就為大家帶來一篇js時間戳記和c#時間戳記互轉方法(推薦)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
執行個體如下:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Newtonsoft.Json;namespace TestWeb{ public partial class ajax : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //TestAjax() } } public void TestAjax() { var phone = Request.Form["phone"]; var authcode = Request.Form["authcode"]; var pt = Request.Form["pt"]; //js時間戳記 new Date().getTime() eg: 1429503106452 string outputmsg = string.Empty; if (phone != null && authcode != null && pt != null) { DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); //說明下,時間格式為13位後面補加4個"0",如果時間格式為10位則後面補加7個"0" long lTime = long.Parse(pt + (pt.Length == 13 ? "0000" : "0000000")); TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); //得到轉換後的時間 string str = dtResult.ToString(); outputmsg = OutMsg(new ResponseInfo { success = true, tag = 100, msg = "成功" }); } Response.Write(outputmsg); } public long GetCurrentTicksForJs() { 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位 return t; } public string OutMsg(object obj) { return JsonConvert.SerializeObject(obj, Newtonsoft.Json.Formatting.Indented); } public class ResponseInfo { public bool success { get; set; } public int tag { get; set; } public string msg { get; set; } } //... }}<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ajax.aspx.cs" Inherits="TestWeb.ajax" %><script type="text/javascript"> var d = new Date(<%=GetCurrentTicksForJs() %>); 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.toString().length ==1 ? "0"+month : month) + "-" + (date.toString().length ==1 ? "0"+date : date) + " " + hour + ":" + minute + ":" + second; }</script>var date = new Date(1459481266695);Y = date.getFullYear() + '-';M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';D = date.getDate() + ' ';h = date.getHours() + ':';m = date.getMinutes() + ':';s = date.getSeconds(); console.log(Y+M+D+h+m+s); VM307:9 2016-04-1 11:27:46