VFP作业:按yyyy-mm-dd格式输入一个日期,如2015-10-31,判断这是这一年的第几天。

2025-04-05 08:41:25
推荐回答(1个)
回答1:

vfp 有很丰富的时间和日期函数  直接把输入的日期减去当年的1月1日 再+1 就是这一年的第几天了.

SET DATE  ymd
SET CENTURY on
SET MARK TO "-"
input_str=INPUTBOX("输入日期(yyyy-mm-dd)","计算第几天",DTOC(DATE()))
input_date=CTOD(input_str)
*WAIT WINDOW NOWAIT  DTOC(input_date)
IF input_date={}
=MESSAGEBOX("输入的日期错误",0+32+256,'计算第几天')  
RETURN
ENDIF
fist_day_str=STR(year(input_date),4)+'-01-01'
fist_day=CTOD(fist_day_str)
item_date= input_date-fist_day
*?item_date

=MESSAGEBOX('输入日期:'+input_str+CHR(13)+'是'+STR(year(input_date),4)+"年的第"+STR(item_date,5)+"天",0+64+256,'计算第几天')  
RETURN

效果

错误提示