首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi 時間分解函數大全:DecodeDate、DecodeTime 等

     編輯:Delphi

SysUtils 單元基礎函數

  • DecodeDate(DateTime: TDateTime; var Year, Month, Day: Word) — 分解年月日
  • DecodeDateFully(DateTime: TDateTime; var Year, Month, Day, DayOfWeek: Word) — 含星期幾(1=週一)
  • DecodeTime(DateTime: TDateTime; var Hour, Min, Sec, MSec: Word) — 分解時分秒毫秒

DateUtils 單元擴展函數

  • DecodeDateTime(DateTime: TDateTime; var Year, Month, Day, Hour, Min, Sec, MSec: Word) — 一次分解所有
  • DecodeDateDay(DateTime: TDateTime; var Year, DayOfYear: Word) — 年內第幾天
  • DecodeDateWeek(DateTime: TDateTime; var Year, WeekOfYear, DayOfWeek: Word) — ISO 週號
  • DecodeDateMonthWeek(DateTime: TDateTime; var Year, Month, WeekOfMonth, DayOfWeek: Word) — 月內第幾周
  • DecodeDayOfWeekInMonth(DateTime: TDateTime; var Year, Month, WeekOfMonth, DayOfWeek: Word) — 同上別名

完整演示代碼

uses DateUtils;

procedure TForm1.FormCreate(Sender: TObject);
var
  dt: TDateTime;
  Year, Month, Day, Week, Hour, Min, Sec, MSec: Word;
begin
  dt := EncodeDateTime(2009, 5, 21, 11, 22, 33, 999);

  DecodeDate(dt, Year, Month, Day);
  ShowMessageFmt('DecodeDate: %d-%d-%d', [Year, Month, Day]); // 2009-5-21

  DecodeDateFully(dt, Year, Month, Day, Week);
  ShowMessageFmt('DecodeDateFully: %d-%d-%d 星期%d', [Year, Month, Day, Week]); // 星期4

  DecodeTime(dt, Hour, Min, Sec, MSec);
  ShowMessageFmt('DecodeTime: %d:%d:%d.%d', [Hour, Min, Sec, MSec]); // 11:22:33.999

  DecodeDateTime(dt, Year, Month, Day, Hour, Min, Sec, MSec);
  ShowMessageFmt('DecodeDateTime: %d-%d-%d %d:%d:%d.%d', [Year, Month, Day, Hour, Min, Sec, MSec]);

  DecodeDateDay(dt, Year, Day);
  ShowMessageFmt('年度第 %d 天', [Day]); // 141

  DecodeDateWeek(dt, Year, Week, Day);
  ShowMessageFmt('第 %d 周 星期%d', [Week, Day]); // 第21周 星期4

  DecodeDateMonthWeek(dt, Year, Month, Week, Day);
  ShowMessageFmt('%d年%d月第%d周 星期%d', [Year, Month, Week, Day]); // 5月第3周 星期4
end;

選擇建議

僅需年月日用 DecodeDate;需星期用 DecodeDateFully;完整分解用 DecodeDateTime;統計按年/周/月天數用 DateUtils 系列。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved