C# /date(1498820611133+0800)/ 轉DateTime
阿新 • • 發佈:2017-07-21
system spa .get arr pre toarray cal index 字符
開發中經常遇到日期轉換問題,特別是做接口的時候,現在整理了下時間戳轉為C#格式時間的方法:
/// <summary> /// 時間戳轉為C#格式時間 /// </summary> /// <param name="timeStamp"></param> /// <returns></returns> public string GetTime(string timeStamp) { //處理字符串,截取括號內的數字 varstrStamp = Regex.Matches(timeStamp, @"(?<=\()((?<gp>\()|(?<-gp>\))|[^()]+)*(?(gp)(?!))").Cast<Match>().Select(t => t.Value).ToArray()[0].ToString(); //處理字符串獲取+號前面的數字 var str = Convert.ToInt64(strStamp.Substring(0, strStamp.IndexOf("+"))); longtimeTricks = new DateTime(1970, 1, 1).Ticks + str * 10000 + TimeZone.CurrentTimeZone.GetUtcOffset(DateTime.Now).Hours * 3600 * (long)10000000; return new DateTime(timeTricks).ToString("yyyy-MM-dd HH:mm:ss"); } /// <summary> /// DateTime時間格式轉換為Unix時間戳格式 /// </summary>/// <param name="time"></param> /// <returns></returns> public int ConvertDateTimeInt(System.DateTime time) { System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); return (int)(time - startTime).TotalSeconds; }
C# \/date(1498820611133+0800)\/ 轉DateTime