美文网首页
时间戳转换

时间戳转换

作者: 张晓强_843d | 来源:发表于2019-10-08 10:14 被阅读0次

    很多地方用到这个东西, 目前我的项目里   抽奖 月卡 邮件 聊天 结算  活动等

    一般这种东西都写成工具类,方便调用

    这是服务器发过来long时间戳, 然后我调用一下方法  GetTime(long.tostring())

    System.Text.StringBuilder mStringBuilder = new System.Text.StringBuilder ();

    string GetTime (string dt){

    string timeStamp = dt;

    DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime (new DateTime (1970, 1, 1));

    long ltime = long.Parse (timeStamp + "0000");

    TimeSpan toNow = new TimeSpan (ltime);

    DateTime dtResult = dtStart.Add (toNow);

    string date = dtResult.ToShortDateString ().ToString ();

    string time = dtResult.ToLongTimeString ().ToString ();

    string[] date_arr = date.Split ('/');

    string[] time_arr = time.Split (':');

    mStringBuilder.Remove (0, mStringBuilder.Length);

    //string result;

    if (dtResult.ToString ().Contains ("PM") && time_arr [0] != "12") {

    //result = date_arr [0] + "月" + date_arr [1] + "日" + (int.Parse (time_arr [0]) + 12) + "时" + time_arr [1] + "分";

    mStringBuilder.Append (date_arr [2] + ".");

    mStringBuilder.Append (date_arr [0] + ".");

    //mStringBuilder.Append (TextData.Month);

    mStringBuilder.Append (date_arr [1] + ".");

    //mStringBuilder.Append (TextData.Day);

    mStringBuilder.Append (((int.Parse (time_arr [0]) + 12) + ":"));

    //mStringBuilder.Append (TextData.Hour);

    mStringBuilder.Append (time_arr [1]);

    //mStringBuilder.Append (TextData.Minute);

    } else {

    //result = date_arr [0] + "月" + date_arr [1] + "日" + time_arr [0] + "时" + time_arr [1] + "分";

    mStringBuilder.Append (date_arr [2] + ".");

    mStringBuilder.Append (date_arr [0] + ".");

    //mStringBuilder.Append (TextData.Month);

    mStringBuilder.Append (date_arr [1] + ".");

    //mStringBuilder.Append (TextData.Day);

    mStringBuilder.Append (time_arr [0] + ":");

    //mStringBuilder.Append (TextData.Hour);

    mStringBuilder.Append (time_arr [1]);

    //mStringBuilder.Append (TextData.Minute);

    }

    return mStringBuilder.ToString ();

    }

    上边是服务器直接发过来时间戳    如果是 如何判断当前的时间和服务器发过来的大小

    下面 获得当前时间long 然后对比已知 OK

    GetTimeStamp (DateTime.Now)

    private long GetTimeStamp (DateTime dt)

    {  

    DateTime dateStart = new DateTime (1970, 1, 1, 8, 0, 0);  

    long timeStamp = Convert.ToInt64 ((dt - dateStart).TotalMilliseconds);  

    return timeStamp;  

    }

    相关文章

      网友评论

          本文标题:时间戳转换

          本文链接:https://www.haomeiwen.com/subject/ujzvpctx.html