亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

delphi中的時間操作技術(2)

2019-11-18 18:40:25
字體:
來源:轉載
供稿:網友
各種時間類型之間的轉換函數
DateTimeToFileDate函數:
定義:DateTimeToFileDate(DateTime: TDateTime): Integer;
作用: 將一個TDateTime類型的時間轉化為Dos環境中的時間,Dos環境下對時間的訪問方法和VCL中的TdateTime類型不一樣,在進行文件操作時,為了保持時間的一致性,需要使用DateTimeToFileDate函數進行轉化,返回的Integer的值就是Dos下的用于描述時間的值。
 
DateTimeToSystemTime 過程:
定義:PRocedure DateTimeToSystemTime(DateTime: TDateTime; var SystemTime: TSystemTime);
作用:將一個TDateTime類型的時間轉換為Win API函數所使用的TSystemTime類型,在使用WinApi函數操縱時間時用到。
 
SystemTimeToDateTime 函數:
定義:function SystemTimeToDateTime(const SystemTime: TSystemTime): TDateTime;
作用:將一個在WinApi函數中得到的TSysTemTime類型的數轉換為TDateTime類型。
 
DateTimeToTimeStamp 函數:
TimeStampToDateTime 函數:
定義:DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp;
      function TimeStampToDateTime(const TimeStamp: TTimeStamp): TDateTime;
作用:用于在TDataTime類型與TTimeStamp之間進行互相轉換。TDataTime 用一個double描繪一個時間,而TTimeStamp則是采用兩個整形數分別描述時間。兩種類型的區別可參考文章開始處的數據類型描述部分。
 
EncodeDate 函數:
定義:function EncodeDate(Year, Month, Day: Word): TDateTime;
作用: 輸入年(year),月(month),日(day)的值,將該日期返回為TDateTime類型,年的范圍為1-9999,月份的范圍為1-12,日期的范圍視當月的情況而定,如果輸入的值超出范圍,則將產生一個EConvertError錯誤。
 
DecodeDate 過程:
定義:procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
作用:輸入一個TDateTime類型的日期,將其轉為年(Year),月(Month),日(Day)的值。如果輸入值為0或小于0,則年月日均為0,
 
EncodeTime 函數:
定義:EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
作用:輸入小時(Hour),分(min),秒(Sec),微秒(MSec)的值,返回一個TDateTime類型的時間,該值為一個介于0至1之間的小數。Hour的取值范圍為0-23,Min的取值范圍為0-59,Sec的取值范圍為0-59,MSec的取值范圍為0-999,如果輸入值超出范圍,則產生一個EConvertError 錯誤。
 
DecodeTime 過程:
定義:procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
作用:輸入一個時間,將其轉換為小時(Hour),分(min),秒(Sec),微秒(MSec)的值。
 
TDateTime類型與字符串型轉換函數:
DateTimeToStr 函數:
DateToStr 函數
TimeToStr函數
定義:function DateTimeToStr(DateTime: TDateTime): string;
      function TimeToStr(Time: TDateTime): string;
function TimeToStr(Time: TDateTime): string;
作用:將一個TDateTime類型的數轉換成字符串,DateTimeToStr轉換日期和時間,DateToStr只轉換日期,TimeToStr只轉換時間。轉換后的輸出效果為YYYY-M-D H:M:S
 
StrToDateTime函數
StrToDate函數
StrToTime函數
定義:function StrToDateTime(const S: string): TDateTime;
      function StrToDate(const S: string): TDateTime;
      function StrToTime(const S: string): TDateTime;
作用:將帶有日期時間格式的字符串轉化成TDateTime,其中S必須是一個有效的字符串,如
      YY-MM-DD HH:MM:SS格式,否則就會觸發EConvertError事件,提示錯誤信息。
      時間部分的字符串必須是由2~3個的數值字串構成,并且采用在Windows區域設置中設置的分隔字符進行分隔,其格式要求符合在Windows區域設定中的設定,其中HH,MM(小時,分鐘)必須添加,SS(秒)可選,也可以在后面加入 Am和Pm區分上下午,這時候系統將認為采用12小時表示法,否則認為采用24小時表示法。
      日期部分的格式要求符合Windows區域設置中的短日期格式,也是由2~3個的數值字串構成,如果在字符串中只有2個數,則認為是指定了月份和日期,年份采用當前年份,
      如果在區域設置中采用兩位年份的表示方法,則系統將會采用以下方法處理:
當前年份
起始年份
基準值
輸入年份03
輸入年份50
輸入年份68
1998
0
1900
1903
1950
1968
2002
0
2000
2003
2050
2068
1998
50
1948
2003
1950
1968
2000
50
1950
2003
1950
1968
2002
50
1952
2003
2050
1968
2020
50
1970
2003
2050
2068
2020
10
2010
2103
2050
2068
      首先在區域設置中取得兩位年份的起始年份,如在區域設置中設兩位年份范圍為1932-2031年,則起始年份為32年,如果這個起始年份為0,則認為兩位年份表示的都是本世紀,如果其實年份大于0 ,則采用當前年份減去起始年份的值,這個值稱為基準值,大于等于這個值則認為事本世紀,否則認為是下世紀,下面給出幾個例子說明:
 
DateTimeToString 過程:
FormatDateTime 函數:
定義:procedure DateTimeToString(var Result: string; const Format: string; DateTime: TDateTime);
       function FormatDateTime(const Format: string; DateTime: TDateTime): string;
作用:通過定義Format字串中的格式得到要輸出時間字符串,例如要輸出“今天是2002年5月5日,星期五”就可以用這兩種方法,這兩個方法的作用相同,只是一個是通過共享變量取得輸出字符串,值在Result中,一個是通過返回值取得輸出字符串,DateTime參數是希望輸出的日期值,Format由格式標志與附加字符串組合而成。附加字串用””圈起,就像C中的Printf函數.如“今天是2002年5月5日,星期五”的Format值就是 ‘”今天是”yyyy”年”mm”月”dd”日,” dddd’,yyyy,mm,dd,dddd都是格式標識,各種格式標識的解釋如下:
       d      :用一位或兩位整數顯示日子(1-31)
       dd     :用兩位整數顯示日子,不足兩位的用0補足(01-31)
       ddd    :按縮略方式顯示當前的星期號,如果Windows是英文版,則顯示為Mon-Sun,如果是中文版,則顯示同dddd。
       dddd   :按完整方式顯示當前的星期號,如Windows是英文版,則顯示Monday-SumDay,如果是中文版,則顯示星期一~星期日
       ddddd  :按區域設置中的短日期格式輸出。
       dddddd :按區域設置中的長日期格式輸出。
       m      :用一位或兩位整數顯示月份(1-12)
       mm     :用兩位整數顯示月份,不足兩位的用0補足(01-12)
       mmm    :使用縮略方式顯示月份名稱,英文版顯示為Jan-Dec,中文版同mmmm
       mmmm   :使用完整方式顯示月份名稱,英文版顯示為January-December,中文版為一月~十二月
       yy     :按兩位整數方式顯示年份(00-99)
       yyyy   :按四位整數方式顯示年份(0000-9999)
       h      :用一位或兩位整數顯示小時(0-23)      
hh     :用兩位整數顯示小時,不足兩位的用0補足(00-23)
       n      :用一位或兩位整數顯示分鐘(0-60)      
       nn     :用兩位整數顯示分鐘,不足兩位的用0補足(00-60)
       s      :用一位或兩位整數顯示秒數(0-60)
       ss     :用兩位整數顯示秒數,不足兩位的用0補足(00-60)
       z      :用一位至兩位整數顯示毫秒數(0-999)
       zzz    :用三位整數顯示毫秒數,不足三位的用0補足(000-999)
       tt     :按照區域設置中的格式顯示日期
       am/pm  :用于12小時制的顯示,帶有AM的則表示從0點~12點,pm代表從12點~0點。
      
與時間相關的變量:
Delphi封裝了區域設置的各種信息,并以此定義了一系列的變量,下面介紹與時間相關的部分變量:
DateSeparator  :Char
日期分隔符,用于分隔年月日
TimeSeparator  :Char
時間分隔符,用于分隔小時,分鐘,秒
ShortDateFormat:String
區域設置中短日期格式的定義。
LongDateFormat :String
區域設置中長日期格式的定義。
ShortTimeFormat:String
區域設置中短時間格式的定義。
LongTimeFormat :String
區域設置中長時間格式的定義。
TimeAMString   :String
用來表示上午的字符串
TimePMString   :String
用來表示下午的字符串
ShortMonthNames:array[1..12] of String;
用于縮略表示月份名稱的數組,就是在使用FormatDateTime時顯示的mmm標識的字符串
LongMonthNames:array[1..12] of String;
用于完整表示月份名稱的數組,就是在使用FormatDateTime時顯示的mmmm標識的字符串
ShortDayNames :array[1..7] of String;
用于縮略表示星期名稱的數組,就是在使用FormatDateTime時顯示的ddd標識的字符串
LongDayNames :array[1..7] of String;
用于完整表示星期名稱的數組,就是在使用FormatDateTime時顯示的ddd標識的字符串
TwoDigitYearCenturyWindow:Word = 50;
在使用兩位年份時的起始年份。

上一篇:Delphi版OpenGL樣例代碼導游

下一篇:在Delphi中捕獲控制臺程序的輸出

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美黑人xxxⅹ高潮交| 成人免费在线网址| 欧美性视频精品| 伊人青青综合网站| 日韩av日韩在线观看| 久久久亚洲成人| 成人激情电影一区二区| 国内精久久久久久久久久人| 揄拍成人国产精品视频| 国产精品久久久久久久久久久久| 91免费在线视频网站| 欧美午夜宅男影院在线观看| 久久精品在线播放| 97视频在线观看网址| 羞羞色国产精品| 色阁综合伊人av| 国产成人一区二区三区电影| 韩剧1988免费观看全集| 97超级碰碰人国产在线观看| 91欧美精品午夜性色福利在线| 欧美成aaa人片免费看| 在线播放国产一区中文字幕剧情欧美| 亚洲欧美国内爽妇网| 国产aⅴ夜夜欢一区二区三区| 国产一区二区日韩精品欧美精品| 91精品国产综合久久香蕉的用户体验| 久久久久国产一区二区三区| 亚洲国产精品久久91精品| 欧美激情视频网址| 欧美日韩美女在线观看| 欧美激情免费观看| 国产成人在线视频| 欧美高清激情视频| 欧美精品久久久久| 亚洲美女视频网| 国产盗摄xxxx视频xxx69| 久久成人人人人精品欧| 91久久久在线| 精品国产欧美一区二区五十路| 亚洲精品视频网上网址在线观看| 欧美中文在线免费| 精品国产视频在线| 黑人巨大精品欧美一区二区| 在线看片第一页欧美| 国产精品一区二区久久久久| 欧美激情a∨在线视频播放| 欧美视频第一页| 91精品视频网站| 精品久久久久久久久久久| 97香蕉超级碰碰久久免费软件| 欧美日韩电影在线观看| 国产va免费精品高清在线观看| 日韩欧美极品在线观看| 精品久久久久久久久久ntr影视| 国产欧美中文字幕| 欧美高跟鞋交xxxxhd| 最近2019年中文视频免费在线观看| 国产精品ⅴa在线观看h| 国产成人中文字幕| 狠狠操狠狠色综合网| 日韩久久午夜影院| 国产成人精品一区二区| 亚洲精品国产精品国自产观看浪潮| 九九精品视频在线观看| 亚洲国产成人精品女人久久久| 国产一区二区三区视频在线观看| 欧美裸体xxxx极品少妇软件| 亚洲网站在线观看| 日本精品va在线观看| 综合国产在线观看| 国产精品视频一区二区三区四| 久久久久国产精品一区| 国产成人中文字幕| 日本不卡视频在线播放| 亚洲第一天堂无码专区| 亚洲美女av在线播放| 中文欧美在线视频| 国产精品免费一区| 欧美一区二三区| 欧美色道久久88综合亚洲精品| 精品亚洲一区二区| 欧美精品精品精品精品免费| 国产精品日韩欧美| 成人黄色免费在线观看| 国产91色在线播放| 日韩毛片在线观看| 97国产真实伦对白精彩视频8| 色偷偷av一区二区三区| 亚洲欧美综合另类中字| 91av在线免费观看视频| 国产精品欧美一区二区三区奶水| 亚洲天堂av在线播放| 国产精品看片资源| 久久精品中文字幕免费mv| 色琪琪综合男人的天堂aⅴ视频| 国产一区二区三区网站| 色悠悠久久久久| 亚洲欧美在线x视频| 成人性生交大片免费观看嘿嘿视频| 亚洲高清久久久久久| 日韩成人黄色av| 欧美在线视频一二三| 亚洲免费成人av电影| 中文字幕国产亚洲2019| 国产欧美日韩综合精品| 日韩国产精品亚洲а∨天堂免| 久久91精品国产91久久久| 久久中文精品视频| 国产精品久久久久999| 久久久久久国产精品久久| 久久精品99无色码中文字幕| 色综合亚洲精品激情狠狠| 91亚洲精品久久久久久久久久久久| 日韩有码在线观看| 狠狠色狠狠色综合日日小说| 国产在线久久久| 亚洲欧洲一区二区三区久久| 国产精品视频公开费视频| 成人网在线视频| 亚洲成人国产精品| 97人人模人人爽人人喊中文字| 中文字幕精品在线视频| 欧美激情视频一区二区| 国产精品免费在线免费| 亚洲国产成人精品女人久久久| 久久的精品视频| 欧美激情啊啊啊| 国产一区二区三区视频免费| 在线亚洲午夜片av大片| 久久天天躁狠狠躁老女人| 国产精品日韩精品| 成人黄色午夜影院| 国产精品第一第二| 日韩欧美成人网| 日韩久久精品电影| 日韩美女视频在线观看| 亚洲欧美999| 亚洲欧美日韩在线一区| 欧美精品一区二区三区国产精品| 欧美不卡视频一区发布| 国产色视频一区| 青草热久免费精品视频| 欧美黄色小视频| 色樱桃影院亚洲精品影院| 亚洲毛茸茸少妇高潮呻吟| 亚洲一区二区三| 欧美黄色免费网站| 91免费精品视频| 青草青草久热精品视频在线网站| 亚洲高清色综合| 国产精品久久网| 国产在线观看一区二区三区| 国产精品一区二区三区免费视频| 欧美精品videosex性欧美| 一区二区欧美激情| 欧美成年人视频| 国产精品第一区| 日韩a**中文字幕| 亚洲大胆人体av| 国产成人午夜视频网址| 亚洲毛片一区二区| 91精品视频在线| 国产精品igao视频| 欧美一性一乱一交一视频|