小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Delphi中的時間處理學習筆記

 遠在南非 2010-08-18

這幾天因為自己要學習編寫一個小程序中要用到一些時間處理。就在網(wǎng)上搜集一些教材學習到一般的應(yīng)用,做個筆記,加深印象。

用上Delphi中相應(yīng)的函數(shù),Delphi的時間處理起來還是很容易的。

Delphi的時間類型是TDateTime,其實是一個Double.這個double的整數(shù)部分,就是從很久很久以前的某一天算起的天數(shù)。小數(shù)就是時間部分了。因為很遠很遠的一天是從0點開始的。所以小數(shù)部分的0值也是對應(yīng)著一天的開始0點0分0秒。


用函數(shù)DateTimetoStr(0)就可以看到那神秘很遠的一天了。這其中用數(shù)字0做參數(shù),表明TDateTime是double.同理也可以用TimetoStr(0),TimetoStr(0.5),看一看時間的轉(zhuǎn)換。

函數(shù):
DateTimetoStr()
DatetoStr()
TimetoStr()

strtotime('10:00:00)
strtodate('2006-2-8')
strtodatetime('2006-2-8 10:00:00')
注意其中日期時間顯示的成文本時候的格式。

轉(zhuǎn)換成文本時候,還有另外一個函數(shù):
FormatDatetime(Formatestring,TDateTime):String
返回值依然是格式化好的string.倒是Formatstring是一個值得研究。
其有用的格式字符:mmmm表示月份, dd表示日, yyyy表示年, hh:mm:ss 是時間(其后用AM/PM 有無來切換12/24小時制)。當d單獨寫且超過三個ddd,則表示星期。除月日,其它各項間要用','間隔。里面可加用'""'包含的字符,會原樣添加到返回值中。

Delphi help 中的一個例子:
S := FormatDateTime('"The meeting is on " ddd, mmmm d, yyyy, " at " hh:mm AM/PM',Now);
則s值為:The meeting is on Wednesday, February 15, 1995 at 2:30 PM

Now(),返回當前系統(tǒng)時間的TDateTime

既然TDateTime是一個double,相互之間是可以直接進行運算的。當然考慮到時間的實際意義,只能進行加和減的運算。比如:Now+1,就表示第二天的這個時候。Now-0.125表示3小時以前。

Now()是用來取系統(tǒng)時間,Win32的時間與delphi的TDateTime的格式還是不同的。
win32時間格式在delphi中定義為:TSystemTime,在delphi中我們可以不用直接處理它。例如now函數(shù)在取時間的時候已經(jīng)幫我們自動轉(zhuǎn)化成TDateTime格式了。

Now()的反向操作,改寫系統(tǒng)時間。
用到一個win32 API函數(shù):SetLocalTime(TSystemTime)
而TDateTime到TSystemTime的轉(zhuǎn)換是用DateTimetoSystemTime(TDateTime,TSystemTime)
要注意的是其參數(shù),而不是用函數(shù)的返回值得到TSystemTime。


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多