菜鸟问题:两个时间类型变量怎样求出它们之间相差的天数?

csdncjp 2003-10-09 10:24:39
同上。
...全文
60 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mxk19791116 2003-10-09
  • 打赏
  • 举报
回复
首部 function FloatToDateTime(const Value: Extended): TDateTime; $[SysUtils.pas
功能 返回浮点数转换成日期时间类型
说明 如果浮点数超出范围将触发异常
参考 function System.Int
例子 Edit2.Text := DateTimeToStr(FloatToDateTime(StrToFloatDef(Edit1.Text, 0)));


这个是把你所说的REAL类型,转为日期类型的。
mxk19791116 2003-10-09
  • 打赏
  • 举报
回复
首部 function FormatDateTime(const Format: string; DateTime: TDateTime): string; $[SysUtils.pas
功能 返回用指定的格式Format来格式化日期时间DateTime
说明 FormatDateTime('YYYY"年"MM"月"DD"日"', StrToDate('2002-03-09')) = '2002年03月09日'
参考 function SysUtils.DateTimeToString
例子 Edit2.Text := FormatDateTime(Edit1.Text, Now);


取得后,转为整型,然后 一减就 OK了。
csdncjp2 2003-10-09
  • 打赏
  • 举报
回复
real怎样转换成int或者string?
da_yu 2003-10-09
  • 打赏
  • 举报
回复
//取得两个日期之间跨越的天数(原始日期为整型,格式为YYYYMMDD)
function GetInsertNum(LastDay,NextDay: Integer): Integer;
Var
StrLen: Integer; // 字串长度
LastStr,NextStr,Separator: String; // 年月日分隔符
begin
Separator := '-'; // 年月日分隔符
LastStr := IntToStr(LastDay); // 取得上一天日期值
NextStr := IntToStr(NextDay); // 取得下一天日期值
StrLen := Length(LastStr);
Insert(Separator,LastStr,StrLen-3); // 插入年月日分隔符
StrLen := Length(LastStr);
Insert(Separator,LastStr,StrLen-1);
StrLen := Length(NextStr);
Insert(Separator,NextStr,StrLen-3);
StrLen := Length(NextStr);
Insert(Separator,NextStr,StrLen-1);
Result := trunc(StrToDate(NextStr) - StrToDate(LastStr));// 取得两交易日间跨越的天数
end;
Little2000 2003-10-09
  • 打赏
  • 举报
回复
DaysBetween(Datetime1,Datetime2);
要引用DateUtils单元
IORILI 2003-10-09
  • 打赏
  • 举报
回复
VARIABLES:
Year1, Month1, Day1,
Year2, Month2, Day2,
YearResult, MonthResult, DayResult: Word;
TDay1, TDay2, DateDiff: TDateTime;
CODE:
TDay1 := EncodeDate(Year1, Month1, Day1);
TDay2 := EncodeDate(Year2, Month2, Day2);
DateDiff := TDay2 - TDay1; {assuming TDay2 is later than TDay1}
DecodeDate(DateDiff, YearResult, MonthResult, DayResult);
dulei115 2003-10-09
  • 打赏
  • 举报
回复
Trunc(Datetime1)-Trunc(Datetime2)
或者函数daysbetween(Datetime1,Datetime2)
z_hongbao 2003-10-09
  • 打赏
  • 举报
回复
var
d: real;
begin
d := DateTimePicker2.DateTime-DateTimePicker1.DateTime;
caption := FormatFloat('###',d) + '天';
end;

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧