C#裏的時間戳

c#中沒有象PHP一樣的time()時間戳函數,但有DateTime.Now.Ticks用來計算時間差。
此屬性的值爲自 0001 年 1 月 1 日午夜 12:00 以來所經過時間以 100 毫微秒爲間隔表示時的數字。
dotnet下用DateTime.Now.Ticks能夠得到精確的時間,單位是10^-7s。

long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60; 

要減去8*60*60才和time()函數得到的值一樣。
什麼問題?剛好是8個時區產生的差別。
DateTime aa=new DateTime(1970,1,1); 

 long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60; 
 
同時發現c#裏面DataTime有一個屬性!DateTime.UtcNow已經考慮了時區問題。
ok~ 使用下面的代碼即可
DateTime timeStamp=new DateTime(1970,1,1); //得到1970年的時間戳
 long a=(DateTime.UtcNow.Ticks-timeStamp.Ticks)/10000000; //注意這裏有時區問題,用now就要減掉8個小時
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章