两个日期之间的天数,不考虑时间的

matitude 2013-07-23 08:46:43
DaysBetween和DaySpan都考虑了时间,我现在只考虑日期,请问该怎样处理?比如:2013-07-22 09:23:09和2013-07-23 07:23:09这两个日期用DaysBetween得出的天数是0,因为不够一整天,但我想要的结果是1,请问如何处理,在线等各位老师的建议,谢谢!
...全文
102 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhy 2013-07-23
  • 打赏
  • 举报
回复
去掉小数部分再相减。
matitude 2013-07-23
  • 打赏
  • 举报
回复
谢谢各位老师,现在结贴!
feiba7288 2013-07-23
  • 打赏
  • 举报
回复
用Trunc就可以了,如下代码:

procedure TForm1.Button1Click(Sender: TObject);
var
  a, b: TDateTime;
  c: integer;
begin
  a := StrToDateTime('2013/07/22 09:23:09');
  b := StrToDateTime('2013/07/23 07:23:09');
  c := DaysBetween(Trunc(b), Trunc(a));
  ShowMessage(IntToStr(c));
end;
支持中文哦 2013-07-23
  • 打赏
  • 举报
回复
日期型变量,整数部分表示逝去的天数,小数部分表示逝去的时间。 把两个变量转换为real,然后只取整数部分,然后,用得到的整数做减法。 记得数字见面,数量加1哦。

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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