js时间戳和c#时间戳互转方法(推荐)

实例如下:

rush:js;"> 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 to<a href="https://www.jb51.cc/tag/Now/" target="_blank" class="keywords">Now</a> = new TimeSpan(lTime);
    DateTime dtResult = dtStart.Add(to<a href="https://www.jb51.cc/tag/Now/" target="_blank" class="keywords">Now</a>); //得到转换后的时间

    string str = dtResult.ToString();
    outputmsg = OutMsg(new ResponseInfo { success = true,tag = 100,msg = "成功" });
  }

  Response.Write(outputmsg);
}

public long GetCurrentTicksForJs()
{
  Sy<a href="https://www.jb51.cc/tag/stem/" target="_blank" class="keywords">stem</a>.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new Sy<a href="https://www.jb51.cc/tag/stem/" target="_blank" class="keywords">stem</a>.DateTime(1970,0));
  DateTime dtResult = DateTime.<a href="https://www.jb51.cc/tag/Now/" target="_blank" class="keywords">Now</a>;//<a href="https://www.jb51.cc/tag/huoqu/" target="_blank" class="keywords">获取</a>时间     
  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;
    } 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

以上这篇js时间戳和c#时间戳互转方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

相关文章

C#项目进行IIS部署过程中报错及其一般解决方案_c#iis执行语句...
微信扫码登录PC端网站应用的案例(C#)_c# 微信扫码登录
原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...