按秒轉換:
uses dateutils;
datetimetounix(now)
可以轉換到unix時間,但是,它得到的時間比c語言中time()得到的時間大了86060
這是因為now是當前時區的時間,
c語言中time()是按格林威治時間計算的,
北京時間比格林威治時間多了8小時
datetimetounix(now)-86060 就和c語言中time()得到的一樣了。
delphi中的datetimetounix時間函式沒有經過任何的轉換,是直接讀取系統時間
就算改變當前計算機時區,發現delphi返回值沒有任何改變。
在c++中,改變計算機時區,則time()返回值也隨著改變,這就說明c++中標準時間是通過本地時間和當前時區進行計算得來的。
在delphi開發時,需要注意delphi獲取的時間戳是當前計算機所在時區時間,並非標準utc時間。
unixtodatetime()函式並沒有對時區進行轉換,僅僅是對時間進行了轉換。
按毫秒轉換
function datetimetomilliseconds(const adatetime: tdatetime): int64; //獲得毫秒
varltimestamp: ttimestamp;
begin
ltimestamp := datetimetotimestamp(adatetime);
result := ltimestamp.date;
result := (result * msecsperday) + ltimestamp.time;
end;
樂考網
C 獲取Unix時間戳
什麼是unix時間戳?unix時間戳 unix timestamp 或稱unix時間 unix time posix時間 posix time 是一種時間表示方式,定義為從格林威治時間1970年01月01日00時00分00秒起至現在的總秒數。unix時間戳不僅被使用在unix系統 類unix系統中,...
用Delphi獲取當前系統時間
在開發應用程式時往往需要獲取當前系統時間。儘管y2k似乎已經平安過去,但在我們新開發的應用程式中還是要謹慎處理 時間 問題。在 融會貫通 delphi4.0實戰技巧 以下簡稱 該書 第89頁專門介紹了兩種獲取當前系統時間的方法,但這兩種方法都存在不足或錯誤,以下就此進行討論。該書第一種方法是利用ti...
用Delphi獲取當前系統時間
在開發應用程式時往往需要獲取當前系統時間。儘管y2k似乎已經平安過去,但在我們新開發的應用程式中還是要謹慎處理 時間 問題。在 融會貫通 delphi4.0實戰技巧 以下簡稱 該書 第89頁專門介紹了兩種獲取當前系統時間的方法,但這兩種方法都存在不足或錯誤,以下就此進行討論。該書第一種方法是利用ti...