现要计算年龄要求精确到日,例如出生年月日为“1980-08-20”和“1980-08-25” 按今天为基准的话前者为24岁,后者为23岁,怎么在delphi中实现,谢谢了!!
解决方案 »
- 請問TGIFImage的用法
- 在Delphi中如何调用Advapi32.dll和Crypt32.dll中的CSP加密模块???
- TBlobField(ADOTable1.FieldbyName('pic')).LoadFromStream(stream)出现invalid class typecast意外??
- 配置了ODBC 为何无法连上SQLserver数据库?
- 真想离开delphi(个人的感觉)
- 字幕滚动
- 有谁呢告诉我怎么样可以让指定的字符高亮显示啊,(请附上代码)谢谢了
- filename
- 软件做好安装后出现的问题
- 有谁知道这是什么主板?(高分赠送)
- 高分求教,我放了一个QRDBRichText1到报表里数据属性都连接了,但是就不显示数据,怎么回事?
- 怎么判断oracle里面的图片是什么格式的(bmp jpeg的两种)?并且如何动态取得里面的图片内容并显示出来?
Edit1.Text := IntToStr(YearsBetween(now, strToDate('1980/08/20')));
Edit2.Text := IntToStr(YearsBetween(now, strToDate('1980/08/27')));
var
Year_now, Month_now, Day_now: Word;
Year_bri, Month_bri, Day_bri: Word;
Brithday: string;
begin
Brithday := '1980-08-20';
DecodeDate(Date, Year_now, Month_now, Day_now); //分解日期为年、月、日
DecodeDate(StrToDateTime(Brithday), Year_bri, Month_bri, Day_bri);
if Year_now >= Year_bri then
begin
if Year_now = Year_bri then ShowMessage('今年刚出生');
if Month_bri > Month_now then
ShowMessage('年龄为'+ IntToStr(Year_now - Year_bri - 1) + '岁')
else begin
ShowMessage('年龄为'+ IntToStr(Year_now - Year_bri) + '岁');
end;
end
else ShowMessage('无法计算年龄');
end;