.net 時間戳互相轉換(精確到毫秒)


這里記錄一個時間戳的互相轉換方法,網上都找了,基本都沒有精確到毫秒,我的這個基本可以滿足精確到毫秒的級別,代碼如下:

 1 /// <summary>
 2         /// Unix時間戳轉換為DateTime
 3         /// </summary>
 4         private DateTime ConvertToDateTime(string timestamp)
 5         {
 6             System.DateTime time = System.DateTime.MinValue;
 7             //精確到毫秒
 8             //時間戳轉成時間
 9             DateTime start = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
10             try
11             {
12                 time = timestamp.Length == 10 ? start.AddSeconds(long.Parse(timestamp)) : start.AddMilliseconds(long.Parse(timestamp));
13             }
14             catch (Exception ex)
15             {
16                 return start;//轉換失敗
17             }
18             return time;
19         }
20 
21         /// <summary>
22         /// DateTime轉換為Unix時間戳
23         /// </summary>
24         /// <param name="time"></param>
25         /// <returns></returns>
26         private string ConvertTimestamp(DateTime time)
27         {
28             double intResult = 0;
29             System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
30             intResult = (time - startTime).TotalMilliseconds;
31             return Math.Round(intResult,0).ToString();
32         }

 


特此標記,希望對有幫助的人少走彎路。ths :-);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM